diff options
Diffstat (limited to '')
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_vlan.c | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_vlan.c b/drivers/infiniband/ulp/ipoib/ipoib_vlan.c index fa4dfcee2644..ca3a7f6c0998 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_vlan.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_vlan.c @@ -106,8 +106,6 @@ int __ipoib_vlan_add(struct ipoib_dev_priv *ppriv, struct ipoib_dev_priv *priv, goto sysfs_failed; } - list_add_tail(&priv->list, &ppriv->child_intfs); - return 0; sysfs_failed: @@ -139,11 +137,6 @@ int ipoib_vlan_add(struct net_device *pdev, unsigned short pkey) return -EPERM; } - if (!down_write_trylock(&ppriv->vlan_rwsem)) { - rtnl_unlock(); - return restart_syscall(); - } - /* * First ensure this isn't a duplicate. We check the parent device and * then all of the legacy child interfaces to make sure the Pkey @@ -175,7 +168,6 @@ int ipoib_vlan_add(struct net_device *pdev, unsigned short pkey) free_netdev(ndev); out: - up_write(&ppriv->vlan_rwsem); rtnl_unlock(); return result; @@ -209,10 +201,6 @@ static void ipoib_vlan_delete_task(struct work_struct *work) struct ipoib_dev_priv *priv = ipoib_priv(dev); struct ipoib_dev_priv *ppriv = ipoib_priv(priv->parent); - down_write(&ppriv->vlan_rwsem); - list_del(&priv->list); - up_write(&ppriv->vlan_rwsem); - ipoib_dbg(ppriv, "delete child vlan %s\n", dev->name); unregister_netdevice(dev); } |