LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 1/2] x86: Fixing improper annotation.
@ 2008-11-11 4:15 Rakib Mullick
0 siblings, 0 replies; 7+ messages in thread
From: Rakib Mullick @ 2008-11-11 4:15 UTC (permalink / raw)
To: linux-kernel; +Cc: Ingo Molnar, Andrew Morton, tglx, hpa
The macro __init used in function 'init_thread_xstate' is not
appropriate. It should be __cpuinit , because it's been called from
__cpuinit functions several times ( I myself found twice, once from
'cpu_init' and other is from 'fpu_init'). Thus produces the following
warning:
WARNING: arch/x86/kernel/built-in.o(.cpuinit.text+0x2237): Section
mismatch in reference from the function cpu_init() to the function
.init.text:init_thread_xstate()
The function __cpuinit cpu_init() references
a function __init init_thread_xstate().
If init_thread_xstate is only used by cpu_init then
annotate init_thread_xstate with a matching annotation.
This patch fixes the above warning. If anything else please notice.
Signed-off-by: Rakib Mullick <rakib.mullick@gmail.com>
--- linux-2.6-orig/arch/x86/kernel/i387.c 2008-11-10 13:28:17.000000000 +0600
+++ linux-2.6/arch/x86/kernel/i387.c 2008-11-10 23:35:09.000000000 +0600
@@ -58,7 +58,7 @@ void __cpuinit mxcsr_feature_mask_init(v
stts();
}
-void __init init_thread_xstate(void)
+void __cpuinit init_thread_xstate(void)
{
if (!HAVE_HWFP) {
xstate_size = sizeof(struct i387_soft_struct);
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re:[PATCH 1/2] x86: Fixing improper annotation.
@ 2008-11-11 8:06 Rufus & Azrael
2008-11-11 10:36 ` [PATCH " Ingo Molnar
0 siblings, 1 reply; 7+ messages in thread
From: Rufus & Azrael @ 2008-11-11 8:06 UTC (permalink / raw)
To: Rakib Mullick, Linux-kernel Mailing List, Ingo Molnar
Hi Rakib,
Your two patches set for x86 init_thread_xsate function section mismatch
is correct to fix the compilation warning, but generates this other one :
> WARNING: vmlinux.o(.cpuinit.text+0x7de): Section mismatch in reference
> from the function xsave_cntxt_init() to the function
> .init.text:__alloc_bootmem()
> The function __cpuinit xsave_cntxt_init() references
> a function __init __alloc_bootmem().
> If __alloc_bootmem is only used by xsave_cntxt_init then
> annotate __alloc_bootmem with a matching annotation.
Thanks for your good job.
Regards.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] x86: Fixing improper annotation.
2008-11-11 8:06 Rufus & Azrael
@ 2008-11-11 10:36 ` Ingo Molnar
2008-11-11 10:48 ` Rufus & Azrael
0 siblings, 1 reply; 7+ messages in thread
From: Ingo Molnar @ 2008-11-11 10:36 UTC (permalink / raw)
To: Rufus & Azrael; +Cc: Rakib Mullick, Linux-kernel Mailing List
* Rufus & Azrael <rufus-azrael@numericable.fr> wrote:
> Hi Rakib,
>
>
> Your two patches set for x86 init_thread_xsate function section
> mismatch is correct to fix the compilation warning, but generates
> this other one :
>
>> WARNING: vmlinux.o(.cpuinit.text+0x7de): Section mismatch in reference
>> from the function xsave_cntxt_init() to the function
>> .init.text:__alloc_bootmem()
>> The function __cpuinit xsave_cntxt_init() references
>> a function __init __alloc_bootmem().
>> If __alloc_bootmem is only used by xsave_cntxt_init then
>> annotate __alloc_bootmem with a matching annotation.
that's with both 1/2 and 2/2 applied?
Ingo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] x86: Fixing improper annotation.
2008-11-11 10:36 ` [PATCH " Ingo Molnar
@ 2008-11-11 10:48 ` Rufus & Azrael
2008-11-11 10:41 ` Ingo Molnar
0 siblings, 1 reply; 7+ messages in thread
From: Rufus & Azrael @ 2008-11-11 10:48 UTC (permalink / raw)
To: Ingo Molnar; +Cc: Rakib Mullick, Linux-kernel Mailing List
Ingo Molnar wrote:
> * Rufus& Azrael<rufus-azrael@numericable.fr> wrote:
>
>
>> Hi Rakib,
>>
>>
>> Your two patches set for x86 init_thread_xsate function section
>> mismatch is correct to fix the compilation warning, but generates
>> this other one :
>>
>>
>>> WARNING: vmlinux.o(.cpuinit.text+0x7de): Section mismatch in reference
>>> from the function xsave_cntxt_init() to the function
>>> .init.text:__alloc_bootmem()
>>> The function __cpuinit xsave_cntxt_init() references
>>> a function __init __alloc_bootmem().
>>> If __alloc_bootmem is only used by xsave_cntxt_init then
>>> annotate __alloc_bootmem with a matching annotation.
>>>
>
> that's with both 1/2 and 2/2 applied?
>
> Ingo
>
>
Yes Ingo with the two patches applied.
Regards.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] x86: Fixing improper annotation.
2008-11-11 10:48 ` Rufus & Azrael
@ 2008-11-11 10:41 ` Ingo Molnar
2008-11-12 0:35 ` Rakib Mullick
0 siblings, 1 reply; 7+ messages in thread
From: Ingo Molnar @ 2008-11-11 10:41 UTC (permalink / raw)
To: Rufus & Azrael; +Cc: Rakib Mullick, Linux-kernel Mailing List
* Rufus & Azrael <rufus-azrael@numericable.fr> wrote:
> Ingo Molnar wrote:
>> * Rufus& Azrael<rufus-azrael@numericable.fr> wrote:
>>
>>
>>> Hi Rakib,
>>>
>>>
>>> Your two patches set for x86 init_thread_xsate function section
>>> mismatch is correct to fix the compilation warning, but generates
>>> this other one :
>>>
>>>
>>>> WARNING: vmlinux.o(.cpuinit.text+0x7de): Section mismatch in reference
>>>> from the function xsave_cntxt_init() to the function
>>>> .init.text:__alloc_bootmem()
>>>> The function __cpuinit xsave_cntxt_init() references
>>>> a function __init __alloc_bootmem().
>>>> If __alloc_bootmem is only used by xsave_cntxt_init then
>>>> annotate __alloc_bootmem with a matching annotation.
>>>>
>>
>> that's with both 1/2 and 2/2 applied?
>>
>> Ingo
>>
>>
> Yes Ingo with the two patches applied.
okay - so i wont apply them until the full scope of the problems here
is mapped. We might be best off by marking xsave_cntxt_init() non-init
altogether for the time being?
Ingo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] x86: Fixing improper annotation.
2008-11-11 10:41 ` Ingo Molnar
@ 2008-11-12 0:35 ` Rakib Mullick
2008-11-14 3:27 ` Rakib Mullick
0 siblings, 1 reply; 7+ messages in thread
From: Rakib Mullick @ 2008-11-12 0:35 UTC (permalink / raw)
To: Ingo Molnar; +Cc: Rufus & Azrael, Linux-kernel Mailing List
On 11/11/08, Ingo Molnar <mingo@elte.hu> wrote:
>
> okay - so i wont apply them until the full scope of the problems here
> is mapped. We might be best off by marking xsave_cntxt_init() non-init
> altogether for the time being?
But, it's been called from an __init section, it will also trigger an
warning too. So, it
will remain as it was. If we goes to hunt these warnings ( I mean
we've to replace __init __alloc_bootmem() with __cpuinit
__alloc_bootmem() ) , it's not certain when it will stop. Likely , we
need to replace a lots of __init with __cpuinit.
Rakib
>
> Ingo
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] x86: Fixing improper annotation.
2008-11-12 0:35 ` Rakib Mullick
@ 2008-11-14 3:27 ` Rakib Mullick
2008-11-18 21:39 ` Ingo Molnar
0 siblings, 1 reply; 7+ messages in thread
From: Rakib Mullick @ 2008-11-14 3:27 UTC (permalink / raw)
To: Ingo Molnar; +Cc: Rufus & Azrael, Linux-kernel Mailing List
On 11/12/08, Rakib Mullick <rakib.mullick@gmail.com> wrote:
> On 11/11/08, Ingo Molnar <mingo@elte.hu> wrote:
>
> >
> > okay - so i wont apply them until the full scope of the problems here
> > is mapped. We might be best off by marking xsave_cntxt_init() non-init
> > altogether for the time being?
>
> But, it's been called from an __init section, it will also trigger an
> warning too. So, it
> will remain as it was. If we goes to hunt these warnings ( I mean
> we've to replace __init __alloc_bootmem() with __cpuinit
> __alloc_bootmem() ) , it's not certain when it will stop. Likely , we
> need to replace a lots of __init with __cpuinit.
>
Actually , if we replace __init __alloc_bootmem() with __cpuinit
__alloc_bootmem() that doesn't solve the problem. The mentioned
warning generates when CONFIG_ARCH_BOOTMEM_NODE=y is set. I think Ingo
is right. We can mark xsave_cntxt_init() as non-init. And we could
teach modpost to not to generate the warning
with __ref. Can we, Ingo ?
> Rakib
> >
> > Ingo
> >
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] x86: Fixing improper annotation.
2008-11-14 3:27 ` Rakib Mullick
@ 2008-11-18 21:39 ` Ingo Molnar
0 siblings, 0 replies; 7+ messages in thread
From: Ingo Molnar @ 2008-11-18 21:39 UTC (permalink / raw)
To: Rakib Mullick; +Cc: Rufus & Azrael, Linux-kernel Mailing List
* Rakib Mullick <rakib.mullick@gmail.com> wrote:
> On 11/12/08, Rakib Mullick <rakib.mullick@gmail.com> wrote:
> > On 11/11/08, Ingo Molnar <mingo@elte.hu> wrote:
> >
> > >
> > > okay - so i wont apply them until the full scope of the problems here
> > > is mapped. We might be best off by marking xsave_cntxt_init() non-init
> > > altogether for the time being?
> >
> > But, it's been called from an __init section, it will also trigger an
> > warning too. So, it
> > will remain as it was. If we goes to hunt these warnings ( I mean
> > we've to replace __init __alloc_bootmem() with __cpuinit
> > __alloc_bootmem() ) , it's not certain when it will stop. Likely , we
> > need to replace a lots of __init with __cpuinit.
> >
>
> Actually , if we replace __init __alloc_bootmem() with __cpuinit
> __alloc_bootmem() that doesn't solve the problem. The mentioned
> warning generates when CONFIG_ARCH_BOOTMEM_NODE=y is set. I think
> Ingo is right. We can mark xsave_cntxt_init() as non-init. And we
> could teach modpost to not to generate the warning with __ref. Can
> we, Ingo ?
sure. Marking stuff non-init is inherently safe as well.
Ingo
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-11-18 21:39 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-11 4:15 [PATCH 1/2] x86: Fixing improper annotation Rakib Mullick
2008-11-11 8:06 Rufus & Azrael
2008-11-11 10:36 ` [PATCH " Ingo Molnar
2008-11-11 10:48 ` Rufus & Azrael
2008-11-11 10:41 ` Ingo Molnar
2008-11-12 0:35 ` Rakib Mullick
2008-11-14 3:27 ` Rakib Mullick
2008-11-18 21:39 ` Ingo Molnar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).