Re: 2.6.17-rc6-mm1

Randy.Dunlap
2006-06-08T02:43:54Z

On 08 Jun 2006 04:25:39 +0200 Andi Kleen wrote:

> Andrew Morton <akpm@osdl.org> writes:
>
> > On Thu, 8 Jun 2006 00:31:53 +0200
> > "J.A. Magallón" <jamagallon@ono.com> wrote:
> >
> > > WARNING: drivers/block/floppy.o - Section mismatch: reference to .init.text: from .smp_locks after '' (at offset 0x3c)
> > > WARNING: drivers/block/floppy.o - Section mismatch: reference to .init.text: from .smp_locks after '' (at offset 0x40)
> > > WARNING: drivers/block/floppy.o - Section mismatch: reference to .init.text: from .smp_locks after '' (at offset 0x44)
> >
> > Yes, that's a false positive - doing locking from within an __init section.
> > We need to shut that up somehow.
>
> Are you sure it's false?
>
> I don't see an explicit check in alternatives.c for the main kernel
> vs init sections and with CPU hotplug the alternatives can be applied
> arbitarily after the system has booted. So it would just stomp
> over the init text pages which are used for something else now.
>
> I guess to make it safe you would need to teach alternative.c to
> ignore init sections.

for i386 (arch/i386/alternative.c and module.c):

static void alternatives_smp_lock(u8 **start, u8 **end, u8 *text, u8 *text_end)
{...}

only replaces code between text and text_end.

I've cced Gerd on this before. Maybe you can get her to repsond
to confirm or deny.

---
~Randy