提交 75d1a752 编写于 作者: T Toshiharu Okada 提交者: David S. Miller

pch_gbe: Fix the issue which a driver locks when rx offload is set by ethtool

This driver will be in a deadlock, When the rx offload is set by ethtool.
The pch_gbe_reinit_locked function was modified.
Signed-off-by: NToshiharu Okada <toshiharu-linux@dsn.okisemi.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 c69b9092
......@@ -519,7 +519,9 @@ static void pch_gbe_reset_task(struct work_struct *work)
struct pch_gbe_adapter *adapter;
adapter = container_of(work, struct pch_gbe_adapter, reset_task);
rtnl_lock();
pch_gbe_reinit_locked(adapter);
rtnl_unlock();
}
/**
......@@ -528,14 +530,8 @@ static void pch_gbe_reset_task(struct work_struct *work)
*/
void pch_gbe_reinit_locked(struct pch_gbe_adapter *adapter)
{
struct net_device *netdev = adapter->netdev;
rtnl_lock();
if (netif_running(netdev)) {
pch_gbe_down(adapter);
pch_gbe_up(adapter);
}
rtnl_unlock();
pch_gbe_down(adapter);
pch_gbe_up(adapter);
}
/**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册