[net] caif-hsi: fix possible deadlock in cfhsi_exit_module()
diff mbox series

Message ID 20190715051017.7514-1-ap420073@gmail.com
State Accepted
Delegated to: David Miller
Headers show
Series
  • [net] caif-hsi: fix possible deadlock in cfhsi_exit_module()
Related show

Commit Message

Taehee Yoo July 15, 2019, 5:10 a.m. UTC
cfhsi_exit_module() calls unregister_netdev() under rtnl_lock().
but unregister_netdev() internally calls rtnl_lock().
So deadlock would occur.

Fixes: c41254006377 ("caif-hsi: Add rtnl support")
Signed-off-by: Taehee Yoo <ap420073@gmail.com>
---
I did only compile test because I don't have the testbed.
Could anyone test this patch?
 drivers/net/caif/caif_hsi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

David Miller July 17, 2019, 6:59 p.m. UTC | #1
From: Taehee Yoo <ap420073@gmail.com>
Date: Mon, 15 Jul 2019 14:10:17 +0900

> cfhsi_exit_module() calls unregister_netdev() under rtnl_lock().
> but unregister_netdev() internally calls rtnl_lock().
> So deadlock would occur.
> 
> Fixes: c41254006377 ("caif-hsi: Add rtnl support")
> Signed-off-by: Taehee Yoo <ap420073@gmail.com>

Applied and queued up for -stable, thank you.

Patch
diff mbox series

diff --git a/drivers/net/caif/caif_hsi.c b/drivers/net/caif/caif_hsi.c
index b2f10b6ad6e5..bbb2575d4728 100644
--- a/drivers/net/caif/caif_hsi.c
+++ b/drivers/net/caif/caif_hsi.c
@@ -1455,7 +1455,7 @@  static void __exit cfhsi_exit_module(void)
 	rtnl_lock();
 	list_for_each_safe(list_node, n, &cfhsi_list) {
 		cfhsi = list_entry(list_node, struct cfhsi, list);
-		unregister_netdev(cfhsi->ndev);
+		unregister_netdevice(cfhsi->ndev);
 	}
 	rtnl_unlock();
 }