forked from luck/tmp_suning_uos_patched
[PATCH] IPoIB: Fix device removal race
Currently we may have work scheduled in default kernel workqueue when the device is going down. The device could get freed before this workqueue gets serviced. I am actually seeing this causing system hangs. The following patch fixes this by using ipoib_workqueue which gets flushed when the device is going down. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
fe9e08e17a
commit
1ad62a19f1
|
@ -672,7 +672,7 @@ static void ipoib_set_mcast_list(struct net_device *dev)
|
|||
{
|
||||
struct ipoib_dev_priv *priv = netdev_priv(dev);
|
||||
|
||||
schedule_work(&priv->restart_task);
|
||||
queue_work(ipoib_workqueue, &priv->restart_task);
|
||||
}
|
||||
|
||||
static void ipoib_neigh_destructor(struct neighbour *n)
|
||||
|
|
Loading…
Reference in New Issue
Block a user