On Mon, Feb 10, 2014 at 12:12:42PM -0800, Hugh Dickins wrote: > On Mon, 10 Feb 2014, Michal Hocko wrote: > > On Fri 07-02-14 12:04:20, Johannes Weiner wrote: > > > Reparenting memory charges in the css_free() callback was meant as a > > > temporary fix for charges that race with offlining, but after some > > > follow-up discussion, it turns out that this is really the right place > > > to reparent charges because it guarantees none are in-flight. > > Perhaps: I'm not as gung-ho for this new orthodoxy as you are. > > > > Make clear that the reparenting in css_offline() is an optimistic > > > sweep of established charges because swapout records might hold up > > > css_free() indefinitely, but that in fact the css_free() reparenting > > > is the properly synchronized one. > > It worries me that you keep referring to the memsw usage, but > forget the kmem usage, which also delays css_free() indefinitely. > > Or am I out-of-date? Seems not, mem_cgroup_reparent_chages() still > waits for memcg->res - memcg->kmem to reach 0, knowing there's not > much certainty that kmem will reach 0 any time soon. > > I think you need a plan for what to do with the kmem pinning, > before going much further in reworking the memsw pinning. > > Or at the least, please mention it in this patch's comment.
It think the discussion from the other thread bled over into this one a little bit, this patch was merely about clarifying that .css_free() reparenting is not the crude hack it was described as. Yes, I forgot about kmem and it should be mentioned in this patch. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/