Message ID | 1543597148-31521-1-git-send-email-tlfalcon@linux.ibm.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
Series | [net] net/ibmvnic: Fix RTNL deadlock during device reset | expand |
From: Thomas Falcon <tlfalcon@linux.ibm.com> Date: Fri, 30 Nov 2018 10:59:08 -0600 > Commit a5681e20b541 ("net/ibmnvic: Fix deadlock problem > in reset") made the change to hold the RTNL lock during > driver reset but still calls netdev_notify_peers, which > results in a deadlock. Instead, use call_netdevice_notifiers, > which is functionally the same except that it does not > take the RTNL lock again. > > Fixes: a5681e20b541 ("net/ibmnvic: Fix deadlock problem in reset") > > Signed-off-by: Thomas Falcon <tlfalcon@linux.ibm.com> Applied.
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c index c0203a0..ed50b8d 100644 --- a/drivers/net/ethernet/ibm/ibmvnic.c +++ b/drivers/net/ethernet/ibm/ibmvnic.c @@ -1859,7 +1859,7 @@ static int do_reset(struct ibmvnic_adapter *adapter, if (adapter->reset_reason != VNIC_RESET_FAILOVER && adapter->reset_reason != VNIC_RESET_CHANGE_PARAM) - netdev_notify_peers(netdev); + call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, netdev); netif_carrier_on(netdev);
Commit a5681e20b541 ("net/ibmnvic: Fix deadlock problem in reset") made the change to hold the RTNL lock during driver reset but still calls netdev_notify_peers, which results in a deadlock. Instead, use call_netdevice_notifiers, which is functionally the same except that it does not take the RTNL lock again. Fixes: a5681e20b541 ("net/ibmnvic: Fix deadlock problem in reset") Signed-off-by: Thomas Falcon <tlfalcon@linux.ibm.com> --- drivers/net/ethernet/ibm/ibmvnic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)