diff options
author | Koen Zandberg <koen@bergzand.net> | 2016-02-10 11:49:38 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2016-02-23 20:29:40 +0100 |
commit | aef00c15b8c503083a703900a755fdb1cf2436e0 (patch) | |
tree | a55e5a8aaca24cd8a7eab610970d8fdf82e6a9ef /net/mac802154 | |
parent | 6367551f462a3c1e2f38f5ea7335e49443379ab2 (diff) | |
download | op-kernel-dev-aef00c15b8c503083a703900a755fdb1cf2436e0.zip op-kernel-dev-aef00c15b8c503083a703900a755fdb1cf2436e0.tar.gz |
mac802154: Fixes kernel oops when unloading a radio driver
Destroying the workqueue before unregistering the net device caused a
kernel oops
Signed-off-by: Koen Zandberg <koen@bergzand.net>
Acked-by: Alexander Aring <aar@pengutronix.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/mac802154')
-rw-r--r-- | net/mac802154/main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac802154/main.c b/net/mac802154/main.c index e8cab5b..87da85a 100644 --- a/net/mac802154/main.c +++ b/net/mac802154/main.c @@ -218,7 +218,6 @@ void ieee802154_unregister_hw(struct ieee802154_hw *hw) tasklet_kill(&local->tasklet); flush_workqueue(local->workqueue); - destroy_workqueue(local->workqueue); rtnl_lock(); @@ -226,6 +225,7 @@ void ieee802154_unregister_hw(struct ieee802154_hw *hw) rtnl_unlock(); + destroy_workqueue(local->workqueue); wpan_phy_unregister(local->phy); } EXPORT_SYMBOL(ieee802154_unregister_hw); |