Re: section mismatches

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 30, 2007 at 06:02:17PM -0700, Andrew Morton wrote:
> 
> Mostly from Andi's tree:
> 
> WARNING: arch/i386/kernel/head.o(.note.Xen+0x68): Section mismatch: reference to .init.text:startup_xen
> WARNING: vmlinux(.text+0xc0101183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
> WARNING: vmlinux(.text+0xc02fc63b): Section mismatch: reference to .init.text:kernel_init (between 'rest_init' and 'alloc_node_mem_map')
> WARNING: vmlinux(.text+0xc0302e16): Section mismatch: reference to .init.text: (between 'iret_exc' and '_etext')
> WARNING: vmlinux(.text+0xc0302e22): Section mismatch: reference to .init.text: (between 'iret_exc' and '_etext')
> WARNING: vmlinux(.text+0xc0302e2e): Section mismatch: reference to .init.text: (between 'iret_exc' and '_etext')
> WARNING: vmlinux(.text+0xc0302e3a): Section mismatch: reference to .init.text: (between 'iret_exc' and '_etext')
> WARNING: vmlinux(.text+0xc02fc6c7): Section mismatch: reference to .init.text:__alloc_bootmem_node (between 'alloc_node_mem_map' and 'zone_wait_table_init')
> WARNING: vmlinux(.text+0xc02fc797): Section mismatch: reference to .init.text:__alloc_bootmem_node (between 'zone_wait_table_init' and 'schedule')
> WARNING: vmlinux(.text+0xc0222408): Section mismatch: reference to .init.text:__alloc_bootmem (between 'vgacon_startup' and 'vgacon_scrolldelta')
> WARNING: vmlinux(.text+0xc03034c1): Section mismatch: reference to .init.text: (between 'iret_exc' and '_etext')
> WARNING: vmlinux(.text+0xc030360d): Section mismatch: reference to .init.text: (between 'iret_exc' and '_etext')
> WARNING: vmlinux(.notes+0x3d28): Section mismatch: reference to .init.text:startup_xen

Some of the above happens during the MODPOST where we check modules.
The recently added trick to use __init_refok should have 'killed' at least
the one referring to rest_init. But running the check on the final vmlinux have thrown
the .text.init.refok into .text.
Will try to work out a fix for it.

> WARNING: vmlinux(.text+0xc0101183): Section mismatch: reference to .init.text:start_kernel (between 'is386' and 'check_x87')
I too a quick look at this one yesterday.
Code in head.S (for i386) are usually .init.text but in CONFIG_HOTPLUG_CPU it us .text.
But start_kernel() is __init.
Is it correct assumed that start_kernel() is never called in the HOTPLUG case since we
are dealign with CPU #2 and more?
If this is true I will introduce the .text.init.refok section.

	Sam
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux