Re: 2.6.19-rc5-mm2

From: Andrew Morton
Date: Tue Nov 14 2006 - 11:42:14 EST


On Tue, 14 Nov 2006 13:46:51 +0100
Mariusz Kozlowski <m.kozlowski@xxxxxxxxxx> wrote:

> Hello,
>
> On every box I tried I got this warning:
>
> $ make
> scripts/kconfig/conf -s arch/i386/Kconfig
> Warning! Found recursive dependency: INET IPV6 DLM (null) DLM_TCP INET

yup. The GFS guys have since fixed that.

> Second thing: the same thing as with 2.6.19-rc5-mm1 happens:
>
> > > > > LD .tmp_vmlinux1
> > > > > arch/x86_64/kernel/built-in.o(.init.text+0x31b7): In function
> > > > > `alternative_instructions': arch/i386/kernel/alternative.c:437:
> undefined
> > > > > reference to `__stop_parainstructions'
> > > > >
> arch/x86_64/kernel/built-in.o(.init.text+0x31be):arch/i386/kernel/alterna
> > > > >tive.c:437: undefined reference to `__start_parainstructions' make: ***
> > > > > [.tmp_vmlinux1] Error 1
> > > >
> > > > Thanks. Please send me the .config and I'll see if it's still
> happening.
> > >
> > > Please find .config attached.
> >
> > Thanks. The paravirt patches have churned a bit recently and we appear to
> > have fixed this one.
>
> Here it goes:
>
> LD .tmp_vmlinux1
> arch/x86_64/kernel/built-in.o(.init.text+0x328f): In function
> `alternative_instructions':
> arch/i386/kernel/alternative.c:437: undefined reference to
> `__stop_parainstructions'
> arch/x86_64/kernel/built-in.o(.init.text+0x3296):arch/i386/kernel/alternative.c:437:
> undefined reference to `__start_parainstructions'
> make: *** [.tmp_vmlinux1] Error 1

Strange, I don't get that with your .config. I guess it's a binutils
difference.

This should fix it:


diff -puN arch/i386/kernel/alternative.c~fix-x86_64-mm-patch-inline-replacements-for arch/i386/kernel/alternative.c
--- a/arch/i386/kernel/alternative.c~fix-x86_64-mm-patch-inline-replacements-for
+++ a/arch/i386/kernel/alternative.c
@@ -381,10 +381,7 @@ void apply_paravirt(struct paravirt_patc
extern struct paravirt_patch __start_parainstructions[],
__stop_parainstructions[];
#else
-void apply_paravirt(struct paravirt_patch *start, struct paravirt_patch *end)
-{
-}
-extern struct paravirt_patch *__start_parainstructions, *__stop_parainstructions;
+#define apply_paravirt(start, end) do { } while (0)
#endif /* CONFIG_PARAVIRT */

void __init alternative_instructions(void)
_


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