Re: [PATCH] memcg: fix use_hierarchy css_is_ancestor oops regression

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Johannes Weiner wrote:
On Sun, Jun 10, 2012 at 11:54:47AM -0700, Hugh Dickins wrote:
If use_hierarchy is set, reclaim testing soon oopses in css_is_ancestor()
called from __mem_cgroup_same_or_subtree() called from page_referenced():
when processes are exiting, it's easy for mm_match_cgroup() to pass along
a NULL memcg coming from a NULL mm->owner.

Check for that in __mem_cgroup_same_or_subtree().  Return true or false?
False because we cannot know if it was in the hierarchy, but also false
because it's better not to count a reference from an exiting process.

Signed-off-by: Hugh Dickins<hughd@xxxxxxxxxx>

Looks like an older version of the patch that introduced it slipped
into the tree, Konstantin noted this problem during review.  The final
version did

	match = memcg&&  __mem_cgroup_same_or_subtree(root, memcg);

in the caller because of it.

Do you think it would be cleaner this way, since this is also the
place where that memcg is looked up, and so the "can return NULL"
handling after mem_cgroup_from_task() would be in the same place?

I agree, it cleaner, but nevertheless:

Acked-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxx>

Thanks, Hugh!


But either way,

Acked-by: Johannes Weiner<hannes@xxxxxxxxxxx>

Thanks, Hugh!

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

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


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]