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

From: Balbir Singh
Date: Thu Nov 25 2010 - 22:24:11 EST


* KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> [2010-11-24 09:23:37]:

> On Tue, 23 Nov 2010 23:52:44 +0100
> Johannes Weiner <hannes@xxxxxxxxxxx> wrote:
>
> > 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>
>
> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
>

Great catch! Thanks


Acked-by: Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx>


--
Three Cheers,
Balbir
--
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/