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, 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>