Re: [BUG 2.6.36-rc6] list corruption in module_bug_finalize

From: Adrian Bunk
Date: Tue Oct 05 2010 - 07:14:40 EST


On Tue, Oct 05, 2010 at 02:48:34PM +1030, Rusty Russell wrote:
> On Mon, 4 Oct 2010 06:21:08 am Thomas Gleixner wrote:
> > Current mainline triggers a list corruption bug in
> > module_bug_finalize(). dmesg excerpt below.
> >
> > The corresponding code says:
> >
> > /*
> > * Strictly speaking this should have a spinlock to protect against
> > * traversals, but since we only traverse on BUG()s, a spinlock
> > * could potentially lead to deadlock and thus be counter-productive.
> > */
> > list_add(&mod->bug_list, &module_bug_list);
> >
> > I can see the traversal problem vs. BUG(), but what's protecting the
> > list_add() ? BKL probably did, but is that true anymore ?
>
> I've never even *seen* this code before :(
>
> Looks like it went through Adrian Bunk to Andrew,
>...

[bunk@xxxxxxxxx: include/linux/bug.h must always #include <linux/module.h]
Signed-off-by: Adrian Bunk <bunk@xxxxxxxxx>

The commit did not went through me, and I did never review or forward it.

My Signed-off-by: was for the change I sent against the original patch,
and it was added to the commit when Andrew included my change into the
original patch.

> but despite the fact that
> it (foolishly) doesn't touch kernel/module.c, it's generic code and I should
> have seen it. It did change the linux/module.h header.
>...

The commit says
Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>

When Andrew submitted it to Linus that should have resulted in an email
to you by the script Andrew uses for submitting patches.

And according to my mail archives that did happen:

Message-Id: <200612081036.kB8AaJDK016473@xxxxxxxxxxxxxxxxxxx>
Subject: [patch 027/368] Generic BUG implementation
To: torvalds@xxxxxxxx
Cc: akpm@xxxxxxxx,
jeremy@xxxxxxxx,
ak@xxxxxx,
benh@xxxxxxxxxxxxxxxxxxx,
bunk@xxxxxxxxx,
hugh@xxxxxxxxxxx,
michael@xxxxxxxxxxxxxx,
paulus@xxxxxxxxx,
rusty@xxxxxxxxxxxxxxx
From: akpm@xxxxxxxx
Date: Fri, 08 Dec 2006 02:36:19 -0800


> Nice catch!
> Rusty.

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

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