Re: kbuild: Section mismatch warnings

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

 



On Friday 17 February 2006 4:09 pm, Greg KH wrote:
> On Fri, Feb 17, 2006 at 11:47:02PM +0100, Sam Ravnborg wrote:

> > 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 - ... etc ...
>
> 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?

If they just usb_gadget_register_driver(), that's how it's defined to
work yes.  (Though a spec lawyer might want more explicit language ...)


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

And the unbind functions __exit/__exit_p()?  Smaller runtime footprints
are good.  I don't like leaving the driver->init() method invalid, which
is I think why I didn't do that before, but saving space is the right
thing to do.


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

Right; that marking is for infrastructure, not drivers.

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