Messages in this thread | ![/](/images/icornerl.gif) | | Date | Tue, 25 Jul 2017 13:06:42 +0100 | From | Roman Gushchin <> | Subject | Re: [PATCH] mm, memcg: reset low limit during memcg offlining |
| |
On Tue, Jul 25, 2017 at 01:58:08PM +0200, Michal Hocko wrote: > On Tue 25-07-17 12:40:47, Roman Gushchin wrote: > > A removed memory cgroup with a defined low limit and some belonging > > pagecache has very low chances to be freed. > > > > If a cgroup has been removed, there is likely no memory pressure inside > > the cgroup, and the pagecache is protected from the external pressure > > by the defined low limit. The cgroup will be freed only after > > the reclaim of all belonging pages. And it will not happen until > > there are any reclaimable memory in the system. That means, > > there is a good chance, that a cold pagecache will reside > > in the memory for an undefined amount of time, wasting > > system resources. > > > > Fix this issue by zeroing memcg->low during memcg offlining. > > Very well spotted! This goes all the way down to low limit inclusion > AFAICS. I would be even tempted to mark it for stable because hiding > some memory from reclaim basically indefinitely is not good. We might > have been just lucky nobody has noticed that yet.
I believe it's because there are not so many actual low limit users, and those who do, are using some offstream patches to mitigate this issue.
Thanks!
Roman
| ![\](/images/icornerr.gif) |