2009-01-23 19:46:21

by Rakib Mullick

[permalink] [raw]
Subject: [PATCH] x86: Fix setion mismatch warning.

Impact: Fix section mismatch warning.

Here function vmi_activate calls a init function activate_vmi , which
causes the following section mismatch warnings. This patch fixes it.

LD arch/x86/kernel/built-in.o
WARNING: arch/x86/kernel/built-in.o(.text+0x13ba9): Section mismatch
in reference from the function vmi_activate() to the function
.init.text:vmi_time_init()
The function vmi_activate() references
the function __init vmi_time_init().
This is often because vmi_activate lacks a __init
annotation or the annotation of vmi_time_init is wrong.

WARNING: arch/x86/kernel/built-in.o(.text+0x13bd1): Section mismatch
in reference from the function vmi_activate() to the function
.devinit.text:vmi_time_bsp_init()
The function vmi_activate() references
the function __devinit vmi_time_bsp_init().
This is often because vmi_activate lacks a __devinit
annotation or the annotation of vmi_time_bsp_init is wrong.

WARNING: arch/x86/kernel/built-in.o(.text+0x13bdb): Section mismatch
in reference from the function vmi_activate() to the function
.devinit.text:vmi_time_ap_init()
The function vmi_activate() references
the function __devinit vmi_time_ap_init().
This is often because vmi_activate lacks a __devinit
annotation or the annotation of vmi_time_ap_init is wrong.


Thanks.

Signed-off-by: Rakib Mullick <[email protected]>

--- linux-2.6-orig/arch/x86/kernel/vmi_32.c 2009-01-23 18:28:05.000000000 +0600
+++ linux-2.6/arch/x86/kernel/vmi_32.c 2009-01-24 00:10:53.000000000 +0600
@@ -858,7 +858,7 @@ void __init vmi_init(void)
#endif
}

-void vmi_activate(void)
+void __init vmi_activate(void)
{
unsigned long flags;


2009-01-26 13:29:19

by Ingo Molnar

[permalink] [raw]
Subject: Re: [PATCH] x86: Fix setion mismatch warning.


* Rakib Mullick <[email protected]> wrote:

> Impact: Fix section mismatch warning.
>
> Here function vmi_activate calls a init function activate_vmi , which
> causes the following section mismatch warnings. This patch fixes it.
>
> LD arch/x86/kernel/built-in.o
> WARNING: arch/x86/kernel/built-in.o(.text+0x13ba9): Section mismatch
> in reference from the function vmi_activate() to the function
> .init.text:vmi_time_init()
> The function vmi_activate() references
> the function __init vmi_time_init().
> This is often because vmi_activate lacks a __init
> annotation or the annotation of vmi_time_init is wrong.
>
> WARNING: arch/x86/kernel/built-in.o(.text+0x13bd1): Section mismatch
> in reference from the function vmi_activate() to the function
> .devinit.text:vmi_time_bsp_init()
> The function vmi_activate() references
> the function __devinit vmi_time_bsp_init().
> This is often because vmi_activate lacks a __devinit
> annotation or the annotation of vmi_time_bsp_init is wrong.
>
> WARNING: arch/x86/kernel/built-in.o(.text+0x13bdb): Section mismatch
> in reference from the function vmi_activate() to the function
> .devinit.text:vmi_time_ap_init()
> The function vmi_activate() references
> the function __devinit vmi_time_ap_init().
> This is often because vmi_activate lacks a __devinit
> annotation or the annotation of vmi_time_ap_init is wrong.
>
>
> Thanks.
>
> Signed-off-by: Rakib Mullick <[email protected]>

applied to tip/x86/urgent, thanks Rakib.

Note, the patch was corrupted here:

> +void __init vmi_activate(void)
> {
> unsigned long flags;
> --

that's too short - context diffs have 3 closing lines. I fixed this up
manually.

I also fixed the typo in the subject line.

Thanks,

Ingo