Re: [PATCH] [BUG] memcg: fix false positive VM_BUG on non-SMP

From: Andrew Morton
Date: Tue Nov 23 2010 - 17:23:18 EST


On Tue, 23 Nov 2010 22:02:55 +0100
Johannes Weiner <hannes@xxxxxxxxxxx> wrote:

> On Tue, Nov 23, 2010 at 12:16:06PM -0800, Andrew Morton wrote:
> > On Tue, 23 Nov 2010 15:48:50 +0200
> > "Kirill A. Shutsemov" <kirill@xxxxxxxxxxxxx> wrote:
> >
> > > ------------[ cut here ]------------
> > > kernel BUG at mm/memcontrol.c:2155!
> >
> > This bug has been there for a year, from which I conclude people don't
> > run memcg on uniprocessor machines a lot.
> >
> > Which is a bit sad, really. Small machines need resource control too,
> > perhaps more than large ones..
>
> Admittedly, this patch is compile-tested on UP only, but it should be
> obvious enough.
>
> ---
> From: Johannes Weiner <hannes@xxxxxxxxxxx>
> Subject: [patch] memcg: fix page cgroup lock assert on UP
>
> Page cgroup locking primitives use the bit spinlock API functions,
> which do nothing on UP.
>
> Thus, checking the lock state can not be done by looking at the bit
> directly, but one has to go through the bit spinlock API as well.
>
> This fixes a guaranteed UP bug, where asserting the page cgroup lock
> bit as a sanity check crashes the kernel.
>

hm, your patch is the same as Kirill's, except you named it
page_is_cgroup_locked() rather than is_page_cgroup_locked(). I guess
page_is_cgroup_locked() is a bit better.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/