Unregister the driver before removing multi-instance hotplug callbacks. This order avoids the warning issued from __cpuhp_remove_state_cpuslocked when the number of remaining instances isn't yet zero. Fixes: 8017c279196a ("net/virtio-net: Convert to hotplug state machine") Cc: Sebastian Andrzej Siewior <bigeasy at linutronix.de> Signed-off-by: Andrew Jones <drjones at redhat.com> --- drivers/net/virtio_net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index 99a26a9efec1..f41ab0ea942a 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -2743,9 +2743,9 @@ module_init(virtio_net_driver_init); static __exit void virtio_net_driver_exit(void) { + unregister_virtio_driver(&virtio_net_driver); cpuhp_remove_multi_state(CPUHP_VIRT_NET_DEAD); cpuhp_remove_multi_state(virtionet_online); - unregister_virtio_driver(&virtio_net_driver); } module_exit(virtio_net_driver_exit); -- 2.13.3
On 2017?07?24? 21:38, Andrew Jones wrote:> Unregister the driver before removing multi-instance hotplug > callbacks. This order avoids the warning issued from > __cpuhp_remove_state_cpuslocked when the number of remaining > instances isn't yet zero. > > Fixes: 8017c279196a ("net/virtio-net: Convert to hotplug state machine") > Cc: Sebastian Andrzej Siewior <bigeasy at linutronix.de> > Signed-off-by: Andrew Jones <drjones at redhat.com> > --- > drivers/net/virtio_net.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > index 99a26a9efec1..f41ab0ea942a 100644 > --- a/drivers/net/virtio_net.c > +++ b/drivers/net/virtio_net.c > @@ -2743,9 +2743,9 @@ module_init(virtio_net_driver_init); > > static __exit void virtio_net_driver_exit(void) > { > + unregister_virtio_driver(&virtio_net_driver); > cpuhp_remove_multi_state(CPUHP_VIRT_NET_DEAD); > cpuhp_remove_multi_state(virtionet_online); > - unregister_virtio_driver(&virtio_net_driver); > } > module_exit(virtio_net_driver_exit); >Acked-by: Jason Wang <jasowang at redhat.com>
On Wed, Jul 26, 2017 at 11:52:07AM +0800, Jason Wang wrote:> > > On 2017?07?24? 21:38, Andrew Jones wrote: > > Unregister the driver before removing multi-instance hotplug > > callbacks. This order avoids the warning issued from > > __cpuhp_remove_state_cpuslocked when the number of remaining > > instances isn't yet zero. > > > > Fixes: 8017c279196a ("net/virtio-net: Convert to hotplug state machine") > > Cc: Sebastian Andrzej Siewior <bigeasy at linutronix.de> > > Signed-off-by: Andrew Jones <drjones at redhat.com> > > --- > > drivers/net/virtio_net.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > > index 99a26a9efec1..f41ab0ea942a 100644 > > --- a/drivers/net/virtio_net.c > > +++ b/drivers/net/virtio_net.c > > @@ -2743,9 +2743,9 @@ module_init(virtio_net_driver_init); > > static __exit void virtio_net_driver_exit(void) > > { > > + unregister_virtio_driver(&virtio_net_driver); > > cpuhp_remove_multi_state(CPUHP_VIRT_NET_DEAD); > > cpuhp_remove_multi_state(virtionet_online); > > - unregister_virtio_driver(&virtio_net_driver); > > } > > module_exit(virtio_net_driver_exit); > > Acked-by: Jason Wang <jasowang at redhat.com>Thanks for the review! I merged it before the tag and don't want to rebase. Sorry about that. -- MST
Apparently Analagous Threads
- [PATCH] virtio-net: fix module unloading
- [PATCH] virtio-net: fix module unloading
- [RFC PATCH net-next v2 2/2] virtio_net: Extend virtio to use VF datapath when available
- [RFC PATCH net-next v2 0/2] Enable virtio to act as a backup for a passthru device
- [RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available