On Tue, May 30, 2017 at 02:24:36PM +0200, Michal Hocko wrote: > On Mon 29-05-17 14:01:41, Roman Gushchin wrote: > > Historically, PGSTEAL*/PGSCAN*/ALLOCSTALL counters were used to > > account only for global reclaim events, memory cgroup targeted reclaim > > was ignored. > > > > It doesn't make sense anymore, because the whole reclaim path > > is designed around cgroups. Also, per-cgroup counters can exceed the > > corresponding global counters, what can be confusing. > > The whole reclaim is designed around cgroups but the source of the > memory pressure is different. I agree that checking global_reclaim() > for PGSTEAL_KSWAPD doesn't make much sense because we are _always_ in > the global reclaim context but counting ALLOCSTALL even for targetted > memcg reclaim is more confusing than helpful. We usually consider this > counter to see whether the kswapd catches up with the memory demand > and the global direct reclaim is indicator it doesn't. The similar > applies to other counters as well. > > So I do not think this is correct. What is the problem you are trying to > solve here anyway. This is a follow-up patch after the discussion here: https://lkml.org/lkml/2017/5/16/706. I can agree with you, that a per-cgroup ALLOCSTALL is something different from a global one, and it's better to keep them separated. But what about PGSTEAL*/PGSCAN* counters, isn't it better to make them reflect __all__ reclaim activity, no matter what was a root cause? Thanks! Roman -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>