lkml.org 
[lkml]   [2009]   [May]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: dubious section mismatch test (was Re: [PULL] soc-camera: one commit as v4l2-dev preparation)
On Sat, May 09, 2009 at 06:13:13PM +0200, Guennadi Liakhovetski wrote:
> On Sat, 9 May 2009, Mauro Carvalho Chehab wrote:
>
> > WARNING: /home/v4l/master/v4l/soc_camera.o(.data+0x0): Section mismatch in reference from the variable soc_camera_pdrv to the function .devinit.text:soc_camera_pdrv_probe()
> > The variable soc_camera_pdrv references
> > the function __devinit soc_camera_pdrv_probe()
> > If the reference is valid then annotate the
> > variable with __init* (see linux/init.h) or name the variable:
> > *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
> >
> > WARNING: /home/v4l/master/v4l/soc_camera.o(.data+0x8): Section mismatch in reference from the variable soc_camera_pdrv to the function .devexit.text:soc_camera_pdrv_remove()
> > The variable soc_camera_pdrv references
> > the function __devexit soc_camera_pdrv_remove()
> > If the reference is valid then annotate the
> > variable with __exit* (see linux/init.h) or name the variable:
> > *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
>
> FWIW, I find this test dubious. Matching on symbol names doesn't seem like
> a good idea to me. Can we introduce a new marker instead something like
>
> static struct whatever_driver __driver driver = {
> .probe = my_probe,
> .remove = __exit_p(my_remove),
> };
>
> to put them in a new special section? Or is there a better solution?

We already have that:
__refdata would be your choice in this case.

Sam


\
 
 \ /
  Last update: 2009-05-09 18:59    [W:0.038 / U:0.844 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site