Re: kbuild: Section mismatch warnings

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

 



On Fri, Feb 17, 2006 at 11:47:02PM +0100, Sam Ravnborg wrote:
> Background:
> I have introduced a build-time check for section mismatch and it showed
> up a great number of warnings.
> Below is the result of the run on a 2.6.16-rc1 tree (which my kbuild
> tree is based upon) based on a 'make allmodconfig'
> 
> 159 warnings in 49 different modules
> 
> I have included the obvious candidates for the modules in to: but some
> are for sure missing and some may be wrong.
> 
> WARNING: drivers/usb/gadget/g_ether.o - Section mismatch: reference to .init.text from .data between 'eth_driver' (at offset 0x10) and 'stringtab'
> WARNING: drivers/usb/gadget/g_file_storage.o - Section mismatch: reference to .init.text from .data between 'fsg_driver' (at offset 0x10) and 'stringtab'
> WARNING: drivers/usb/gadget/g_serial.o - Section mismatch: reference to .init.text from .text between 'gs_bind' (at offset 0x50) and '.text.lock.serial'
> WARNING: drivers/usb/gadget/g_serial.o - Section mismatch: reference to .init.text from .text between 'gs_bind' (at offset 0x5f) and '.text.lock.serial'
> WARNING: drivers/usb/gadget/g_serial.o - Section mismatch: reference to .init.text from .text between 'gs_bind' (at offset 0x88) and '.text.lock.serial'
> WARNING: drivers/usb/gadget/g_serial.o - Section mismatch: reference to .init.text from .text between 'gs_bind' (at offset 0xba) and '.text.lock.serial'
> WARNING: drivers/usb/gadget/g_zero.o - Section mismatch: reference to .init.text from .text between 'zero_bind' (at offset 0x11) and 'zero_suspend'
> WARNING: drivers/usb/gadget/g_zero.o - Section mismatch: reference to .init.text from .text between 'zero_bind' (at offset 0x20) and 'zero_suspend'
> WARNING: drivers/usb/gadget/g_zero.o - Section mismatch: reference to .init.text from .text between 'zero_bind' (at offset 0x68) and 'zero_suspend'

David, these all look like they are due to the calls in the
drivers/usb/gadget/epautoconf.c file from functions within the gadget
drivers.  It looks like it's all safe, but can you verify that the bind
callback is finished before module_init() exits?

And if so, we should mark the bind functions __init also, to prevent
this from being flagged in the future.

> WARNING: drivers/usb/host/isp116x-hcd.o - Section mismatch: reference to .init.text from .data between '' (at offset 0x0) and 'isp116x_hc_driver'

This looks like the isp116x_remove function just needs to get the looney
__init_or_module marking of of it.  Again, David, do you agree?

thanks,

greg k-h
-
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