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

From: Johannes Weiner
Date: Tue Nov 23 2010 - 17:53:16 EST


On Tue, Nov 23, 2010 at 02:22:47PM -0800, Andrew Morton wrote:
> 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.

I had not sorted by threads and somehow assumed this was another
forward from you of a bugzilla report or something. I didn't see
Kirill's patch until now. Sorry!

Reviewed-by: Johannes Weiner <hannes@xxxxxxxxxxx>
--
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/