net/xen-netfront: only napi_synchronize() if running
If an interface isn't running napi_synchronize() will hang forever.
[ 392.248403] rmmod R running task 0 359 343 0x00000000
[ 392.257671]
ffff88003760fc88 ffff880037193b40 ffff880037193160 ffff88003760fc88
[ 392.267644]
ffff880037610000 ffff88003760fcd8 0000000100014c22 ffffffff81f75c40
[ 392.277524]
0000000000bc7010 ffff88003760fca8 ffffffff81796927 ffffffff81f75c40
[ 392.287323] Call Trace:
[ 392.291599] [<
ffffffff81796927>] schedule+0x37/0x90
[ 392.298553] [<
ffffffff8179985b>] schedule_timeout+0x14b/0x280
[ 392.306421] [<
ffffffff810f91b9>] ? irq_free_descs+0x69/0x80
[ 392.314006] [<
ffffffff811084d0>] ? internal_add_timer+0xb0/0xb0
[ 392.322125] [<
ffffffff81109d07>] msleep+0x37/0x50
[ 392.329037] [<
ffffffffa00ec79a>] xennet_disconnect_backend.isra.24+0xda/0x390 [xen_netfront]
[ 392.339658] [<
ffffffffa00ecadc>] xennet_remove+0x2c/0x80 [xen_netfront]
[ 392.348516] [<
ffffffff81481c69>] xenbus_dev_remove+0x59/0xc0
[ 392.356257] [<
ffffffff814e7217>] __device_release_driver+0x87/0x120
[ 392.364645] [<
ffffffff814e7cf8>] driver_detach+0xb8/0xc0
[ 392.371989] [<
ffffffff814e6e69>] bus_remove_driver+0x59/0xe0
[ 392.379883] [<
ffffffff814e84f0>] driver_unregister+0x30/0x70
[ 392.387495] [<
ffffffff814814b2>] xenbus_unregister_driver+0x12/0x20
[ 392.395908] [<
ffffffffa00ed89b>] netif_exit+0x10/0x775 [xen_netfront]
[ 392.404877] [<
ffffffff81124e08>] SyS_delete_module+0x1d8/0x230
[ 392.412804] [<
ffffffff8179a8ee>] system_call_fastpath+0x12/0x71
Signed-off-by: Chas Williams <3chas3@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>