On Thu, Jul 27, 2017 at 02:04:28PM +0100, Roman Gushchin wrote: > Commit fa06235b8eb0 ("cgroup: reset css on destruction") caused > css_reset callback to be called from the offlining path. Although > it solves the problem mentioned in the commit description > ("For instance, memory cgroup needs to reset memory.low, otherwise > pages charged to a dead cgroup might never get reclaimed."), > generally speaking, it's not correct. > > An offline cgroup can still be a resource domain, and we shouldn't > grant it more resources than it had before deletion. > > For instance, if an offline memory cgroup has dirty pages, we should > still imply i/o limits during writeback. > > The css_reset callback is designed to return the cgroup state > into the original state, that means reset all limits and counters. > It's spomething different from the offlining, and we shouldn't use > it from the offlining path. Instead, we should adjust necessary > settings from the per-controller css_offline callbacks (e.g. reset > memory.low). > > Signed-off-by: Roman Gushchin <guro@xxxxxx> > Cc: Vladimir Davydov <vdavydov.dev@xxxxxxxxx> > Cc: Tejun Heo <tj@xxxxxxxxxx> > Cc: Johannes Weiner <hannes@xxxxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxxxxx> > Cc: kernel-team@xxxxxx > Cc: cgroups@xxxxxxxxxxxxxxx > Cc: linux-mm@xxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx> -- 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>