提交 986103e7 编写于 作者: T Thomas Falcon 提交者: David S. Miller

net/ibmvnic: Fix RTNL deadlock during device reset

Commit a5681e20 ("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: a5681e20 ("net/ibmnvic: Fix deadlock problem in reset")
Signed-off-by: NThomas Falcon <tlfalcon@linux.ibm.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 e3f78718
...@@ -1859,7 +1859,7 @@ static int do_reset(struct ibmvnic_adapter *adapter, ...@@ -1859,7 +1859,7 @@ static int do_reset(struct ibmvnic_adapter *adapter,
if (adapter->reset_reason != VNIC_RESET_FAILOVER && if (adapter->reset_reason != VNIC_RESET_FAILOVER &&
adapter->reset_reason != VNIC_RESET_CHANGE_PARAM) adapter->reset_reason != VNIC_RESET_CHANGE_PARAM)
netdev_notify_peers(netdev); call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, netdev);
netif_carrier_on(netdev); netif_carrier_on(netdev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册