diff options
| -rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_ib.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_ib.c b/drivers/infiniband/ulp/ipoib/ipoib_ib.c index 54ef2fea530f..23885801b6d2 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_ib.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_ib.c | |||
| @@ -608,9 +608,13 @@ void ipoib_ib_dev_flush(void *_dev) | |||
| 608 | if (test_bit(IPOIB_FLAG_ADMIN_UP, &priv->flags)) | 608 | if (test_bit(IPOIB_FLAG_ADMIN_UP, &priv->flags)) |
| 609 | ipoib_ib_dev_up(dev); | 609 | ipoib_ib_dev_up(dev); |
| 610 | 610 | ||
| 611 | down(&priv->vlan_mutex); | ||
| 612 | |||
| 611 | /* Flush any child interfaces too */ | 613 | /* Flush any child interfaces too */ |
| 612 | list_for_each_entry(cpriv, &priv->child_intfs, list) | 614 | list_for_each_entry(cpriv, &priv->child_intfs, list) |
| 613 | ipoib_ib_dev_flush(&cpriv->dev); | 615 | ipoib_ib_dev_flush(&cpriv->dev); |
| 616 | |||
| 617 | up(&priv->vlan_mutex); | ||
| 614 | } | 618 | } |
| 615 | 619 | ||
| 616 | void ipoib_ib_dev_cleanup(struct net_device *dev) | 620 | void ipoib_ib_dev_cleanup(struct net_device *dev) |
