Re: too big min_free_kbytes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 28, 2011 at 02:34:31PM -0500, Rik van Riel wrote:
> It will block at high+gap only when one zone has really
> easily reclaimable memory, and another zone has difficult
> to free memory.

The other zone doesn't need to be difficult to free up. All ram in
immediately freeable clean cache is the most common case there is. And
it's more than enough to trigger the scenario in prev email.

> That creates a free memory differential between the
> easy to free and difficult to free memory zones.

There's no difficult to free zone in this scenario.

> If memory in all zones is equally easy to free, kswapd
> will go to sleep once the high watermark is reached in
> every zone.

Yes, at that point the high wmark is reached for all zones. Then cp or
any file read allocates another high-low amount of clean cache, and
kswapd will be waken again. Then when it goes to sleep the over4g tiny
zone will be at "high" again but the below zones will be at
high+(high_over4gwmark-low_over4gwmark), in about 5 seconds the over4g
zone will be at "high" and the other two zones will be at
"high+gap". All when there's zero memory pressure in the below zones,
and there's just some clean cache shrinking required to allocate the
new cache from the over4g zone. Then the below zones lru stops
rotating regardless of the size of the gap (0 or 600M makes no
difference).

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]