]> rtime.felk.cvut.cz Git - zynq/linux.git/commit
scsi: fcoe: open-code fcoe_destroy_work() for NETDEV_UNREGISTER
authorHannes Reinecke <hare@suse.de>
Fri, 15 Sep 2017 11:12:14 +0000 (13:12 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 15 Sep 2017 19:44:49 +0000 (15:44 -0400)
commit7eccdf005b2f240b9e9f53c72eb19367e21a8cf8
treef98061c1c54080ac2897df2364b2c15234c03583
parent6f7f74abaec12af6becf0a471d5968bce2f389b6
scsi: fcoe: open-code fcoe_destroy_work() for NETDEV_UNREGISTER

When a NETDEV_UNREGISTER notification is received the network device is
_deleted_ after the callback returns.  So we cannot use a workqueue
here, as this would cause an inversion when removing the device as the
netdev is already gone.  This manifests with a nasty warning during
shutdown:

sysfs group ffffffff81eff0e0 not found for kobject 'fc_host7'

So open-code fcoe_destroy_work() when receiving the notification to
avoid this inversion.

Signed-off-by: Hannes Reinecke <hare@suse.com>
Reviewed-by: Lee Duncan <lduncan@suse.com>
Acked-by: Johannes Thumshirn <jth@kernel.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/fcoe/fcoe.c