Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

authored by

Koen Zandberg and committed by
Marcel Holtmann
aef00c15 6367551f

+1 -1
+1 -1
net/mac802154/main.c
··· 218 218 219 219 tasklet_kill(&local->tasklet); 220 220 flush_workqueue(local->workqueue); 221 - destroy_workqueue(local->workqueue); 222 221 223 222 rtnl_lock(); 224 223 ··· 225 226 226 227 rtnl_unlock(); 227 228 229 + destroy_workqueue(local->workqueue); 228 230 wpan_phy_unregister(local->phy); 229 231 } 230 232 EXPORT_SYMBOL(ieee802154_unregister_hw);