Messages in this thread Patch in this message | | | Date | Sun, 19 Feb 2006 13:59:24 +0100 | From | Johannes Stezenbach <> | Subject | Re: [v4l-dvb-maintainer] Re: kbuild: Section mismatch warnings |
| |
On Sun, Feb 19, 2006, Sam Ravnborg wrote: > 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' > > Updated list of warnings below. This time on a rc4 tree and with > referenced symbol included in warning (when possible). > This is with my latest kbuild tree which will show up in next -mm. ... > WARNING: drivers/media/dvb/ttpci/dvb-ttpci.o - Section mismatch: reference to .init.text:av7110_ir_init from .text between 'av7110_attach' (at offset 0xcaa6) and 'av7110_detach' > WARNING: drivers/media/dvb/ttpci/dvb-ttpci.o - Section mismatch: reference to .exit.text:av7110_ir_exit from .text between 'av7110_detach' (at offset 0xcbc5) and 'av7110_irq'
These seem to be legitimate and point to the right place. Patch attached.
Thanks, Johannes
--- dvb: fix __init/__exit section references in av7110 driver
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
diff -r 24e38b947b8a linux/drivers/media/dvb/ttpci/av7110.c --- a/linux/drivers/media/dvb/ttpci/av7110.c Sat Feb 18 10:41:07 2006 -0200 +++ b/linux/drivers/media/dvb/ttpci/av7110.c Sun Feb 19 13:54:37 2006 +0100 @@ -2476,7 +2476,8 @@ static int frontend_init(struct av7110 * * The same behaviour of missing VSYNC can be duplicated on budget * cards, by seting DD1_INIT trigger mode 7 in 3rd nibble. */ -static int av7110_attach(struct saa7146_dev* dev, struct saa7146_pci_extension_data *pci_ext) +static int __devinit av7110_attach(struct saa7146_dev* dev, + struct saa7146_pci_extension_data *pci_ext) { const int length = TS_WIDTH * TS_HEIGHT; struct pci_dev *pdev = dev->pci; @@ -2826,7 +2827,7 @@ err_kfree_0: goto out; } -static int av7110_detach(struct saa7146_dev* saa) +static int __devexit av7110_detach(struct saa7146_dev* saa) { struct av7110 *av7110 = saa->ext_priv; dprintk(4, "%p\n", av7110); @@ -2973,7 +2974,7 @@ static struct saa7146_extension av7110_e .module = THIS_MODULE, .pci_tbl = &pci_tbl[0], .attach = av7110_attach, - .detach = av7110_detach, + .detach = __devexit_p(av7110_detach), .irq_mask = MASK_19 | MASK_03 | MASK_10, .irq_func = av7110_irq, diff -r 24e38b947b8a linux/drivers/media/dvb/ttpci/av7110_ir.c --- a/linux/drivers/media/dvb/ttpci/av7110_ir.c Sat Feb 18 10:41:07 2006 -0200 +++ b/linux/drivers/media/dvb/ttpci/av7110_ir.c Sun Feb 19 13:54:37 2006 +0100 @@ -208,7 +208,7 @@ static void ir_handler(struct av7110 *av } -int __init av7110_ir_init(struct av7110 *av7110) +int __devexit av7110_ir_init(struct av7110 *av7110) { static struct proc_dir_entry *e; @@ -248,7 +248,7 @@ int __init av7110_ir_init(struct av7110 } -void __exit av7110_ir_exit(struct av7110 *av7110) +void __devexit av7110_ir_exit(struct av7110 *av7110) { int i; - 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/
| |