Messages in this thread | | | Date | Sun, 16 Apr 2006 01:36:27 +0200 | From | Sam Ravnborg <> | Subject | Re: some remaining section mismatches |
| |
On Sat, Apr 15, 2006 at 02:52:31PM -0700, Randy.Dunlap wrote: > > 1. I don't understand this one. Can you look at it? > > WARNING: drivers/video/macmodes.o - Section mismatch: reference to .init.text:mac_find_mode from __ksymtab between '__ksymtab_mac_find_mode' (at offset 0x0) and '__ksymtab_mac_map_monitor_sense'
mac_find_mode is EXPORT_SYMBOL() and marked __init This does not look correct to me. How do we know that it is valid to use this exported symbol? Fix: do not mark mac_find_mode() as __init?
> 2. This is requires either a whitelist addition or a change to the > struct name in the driver: > > WARNING: drivers/scsi/megaraid/megaraid_mbox.o - Section mismatch: reference to .init.text:megaraid_probe_one from .data between 'megaraid_pci_driver_g' (at offset 0x2e0) and 'megaraid_mbox_version'
As indicated a rename would do the trick. s/megaraid_pci_driver_g/megaraid_pci_driver/g The _g syntax does not look common and for this case we will not soften up the pattern to look for "driver" anywhere in the variable.
> 3. drivers/char/tpm_infineon.c: > > WARNING: drivers/char/tpm/tpm_infineon.o - Section mismatch: reference to .init.text:tpm_inf_pnp_probe from .data between 'tpm_inf_pnp' (at offset 0x18) and 'tpm_inf' > WARNING: drivers/char/tpm/tpm_infineon.o - Section mismatch: reference to .exit.text:tpm_inf_pnp_remove from .data between 'tpm_inf_pnp' (at offset 0x20) and 'tpm_inf' > > I don't see a problem here, the driver just isn't using the whitelisted > struct name(s). Agree. s/\<tpm_inf_pnp\>/tpm_inf_driver/g
> 4. drivers/rtc/: rtc-sysfs.c and rtc-test.c: > > WARNING: drivers/rtc/rtc-sysfs.o - Section mismatch: reference to .init.text:rtc_sysfs_add_device from .data between 'rtc_sysfs_interface' (at offset 0x18) and 'rtc_attr_group' > > This could be OK, hopefully someone can say yes/no. Look sane. The naming *_interface looks generic - so maybe we should whitelist it too?
> WARNING: drivers/rtc/rtc-test.o - Section mismatch: reference to .exit.text:test_remove from .data between 'test_drv' (at offset 0x8) and 'dev_attr_irq' > > Looks OK, struct name is just not in the whitelist. > Changing the struct name removes the warning. grepping shows up that naming *_drv is quite common. So the better fix would probarly be to whitelist it too?
Sam
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |