Re: [PATCH 31/34] move virtrng_remove to .devexit.text

From: Michael S. Tsirkin
Date: Thu Oct 01 2009 - 05:48:31 EST


On Thu, Oct 01, 2009 at 11:31:06AM +0200, Uwe Kleine-König wrote:
> Hello,
>
> On Thu, Oct 01, 2009 at 11:12:18AM +0200, Michael S. Tsirkin wrote:
> > On Thu, Oct 01, 2009 at 10:44:48AM +0200, Christian Borntraeger wrote:
> > > Am Donnerstag 01 Oktober 2009 10:28:35 schrieb Uwe Kleine-König:
> > > > The function virtrng_remove is used only wrapped by __devexit_p so define
> > > > it using __devexit.
> > > >
> > > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
> > > > Acked-by: Sam Ravnborg <sam@xxxxxxxxxxxx>
> > > > Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
> > > > Cc: Michael S. Tsirkin <mst@xxxxxxxxxx>
> > > > Cc: Christian Borntraeger <borntraeger@xxxxxxxxxx>
> > >
> > > Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
> >
> > FWIW
> > Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
> ok
>
> > > It seems that there are similar changes possible in other virtio drivers (e.g.
> > > virtio_net).
> http://thread.gmane.org/gmane.linux.kernel/896297/focus=896309
>
> > Yes, and more importantly drivers/virtio/virtio.c as well.
> Hm, I don't see it:
>
> $ git grep -E '__(dev)?exit_p' linus/master:drivers/virtio/virtio.c
>
> $
>
> Well, you could add something, but adding __devexit is a noop for most
> kernels. It matters only if you don't have CONFIG_HOTPLUG.

And MODULE.

> In this series I only addressed drivers that use __{,dev}exit and
> __{,dev}exit_p inconsistenly. I.e. my script greps for __{,dev}exit_p
> and checks the prototype of the wrapped function. I have another
> script that does a similar check for platform_devices in general. This
> one also notices if you have a __devexit function that isn't wrapped by
> __devexit_p.

Can we teach sparse about this?

> So if you want to see drivers/virtio/virtio.c improving, send patches
> yourself :-)

Here's my reasoning:
include/linux/virtio.h defines virtio_driver, and remove pointer
there is only used on hot-unplug or module removal.
This is the only reason I see that we can make device removal as devexit.
So we can make all of them devexit then?


> Best regards
> Uwe
>
> --
> Pengutronix e.K. | Uwe Kleine-König |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/