Messages in this thread | ![/](/images/icornerl.gif) | | Date | Sun, 25 Nov 2018 18:01:15 -0800 | From | Matthew Wilcox <> | Subject | Re: [PATCH] mm: do not consider SWAP to calculate available when not necessary |
| |
On Mon, Nov 26, 2018 at 07:58:23AM +0800, Yang Yang wrote: > When si_mem_available() calculates 'available', it takes SWAP > into account. But if CONFIG_SWAP is N or SWAP is off(some embedded system > would like to do that), there is no need to consider it.
I don't understand this patch. The pagecache can be written back to storage if it is dirty, regardless of whether there is swap space.
> @@ -4724,9 +4726,13 @@ long si_mem_available(void) > * Not all the page cache can be freed, otherwise the system will > * start swapping. Assume at least half of the page cache, or the > * low watermark worth of cache, needs to stay. > + * But if CONFIG_SWAP is N or SWAP is off, do not consider it. > */ > pagecache = pages[LRU_ACTIVE_FILE] + pages[LRU_INACTIVE_FILE]; > - pagecache -= min(pagecache / 2, wmark_low); > +#ifdef CONFIG_SWAP > + if (i.totalswap > 0) > + pagecache -= min(pagecache / 2, wmark_low); > +#endif > available += pagecache; > > /* > -- > 2.15.2 >
| ![\](/images/icornerr.gif) |