On Wed 05-02-14 11:45:43, Johannes Weiner wrote: > On Wed, Feb 05, 2014 at 05:19:40PM +0100, Michal Hocko wrote: > > On Wed 05-02-14 10:28:21, Johannes Weiner wrote: > > > Here is the only exception to the above: swapout records maintain > > > permanent css references, so they prevent css_free() from running. > > > For that reason alone we should run one optimistic reparenting in > > > css_offline() to make sure one swap record does not pin gigabytes of > > > pages in an offlined cgroup, which is unreachable for reclaim. But > > > > How can reparenting help for swapped out pages? Or did you mean to at > > least get rid of swapcache pages? > > I was thinking primarily of page cache. There could be a lot of it > left in the group and once css_tryget() is disabled we can't reclaim > it anymore.
Good point. > So we'd clean that out at offline time optimistically and > at css_free() we catch any charges raced that showed up afterwards. OK, care to send a patch which would clarify the reparenting usage in both css_offline and css_free? -- Michal Hocko SUSE Labs -- 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/