diff options
-rw-r--r-- | drivers/infiniband/hw/mlx4/main.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/drivers/infiniband/hw/mlx4/main.c b/drivers/infiniband/hw/mlx4/main.c index d404a2eafa79..c231112396b2 100644 --- a/drivers/infiniband/hw/mlx4/main.c +++ b/drivers/infiniband/hw/mlx4/main.c | |||
@@ -360,7 +360,7 @@ static int eth_link_query_port(struct ib_device *ibdev, u8 port, | |||
360 | props->state = IB_PORT_DOWN; | 360 | props->state = IB_PORT_DOWN; |
361 | props->phys_state = state_to_phys_state(props->state); | 361 | props->phys_state = state_to_phys_state(props->state); |
362 | props->active_mtu = IB_MTU_256; | 362 | props->active_mtu = IB_MTU_256; |
363 | spin_lock(&iboe->lock); | 363 | spin_lock_bh(&iboe->lock); |
364 | ndev = iboe->netdevs[port - 1]; | 364 | ndev = iboe->netdevs[port - 1]; |
365 | if (!ndev) | 365 | if (!ndev) |
366 | goto out_unlock; | 366 | goto out_unlock; |
@@ -372,7 +372,7 @@ static int eth_link_query_port(struct ib_device *ibdev, u8 port, | |||
372 | IB_PORT_ACTIVE : IB_PORT_DOWN; | 372 | IB_PORT_ACTIVE : IB_PORT_DOWN; |
373 | props->phys_state = state_to_phys_state(props->state); | 373 | props->phys_state = state_to_phys_state(props->state); |
374 | out_unlock: | 374 | out_unlock: |
375 | spin_unlock(&iboe->lock); | 375 | spin_unlock_bh(&iboe->lock); |
376 | out: | 376 | out: |
377 | mlx4_free_cmd_mailbox(mdev->dev, mailbox); | 377 | mlx4_free_cmd_mailbox(mdev->dev, mailbox); |
378 | return err; | 378 | return err; |
@@ -814,11 +814,11 @@ int mlx4_ib_add_mc(struct mlx4_ib_dev *mdev, struct mlx4_ib_qp *mqp, | |||
814 | if (!mqp->port) | 814 | if (!mqp->port) |
815 | return 0; | 815 | return 0; |
816 | 816 | ||
817 | spin_lock(&mdev->iboe.lock); | 817 | spin_lock_bh(&mdev->iboe.lock); |
818 | ndev = mdev->iboe.netdevs[mqp->port - 1]; | 818 | ndev = mdev->iboe.netdevs[mqp->port - 1]; |
819 | if (ndev) | 819 | if (ndev) |
820 | dev_hold(ndev); | 820 | dev_hold(ndev); |
821 | spin_unlock(&mdev->iboe.lock); | 821 | spin_unlock_bh(&mdev->iboe.lock); |
822 | 822 | ||
823 | if (ndev) { | 823 | if (ndev) { |
824 | ret = 1; | 824 | ret = 1; |
@@ -1265,11 +1265,11 @@ static int mlx4_ib_mcg_detach(struct ib_qp *ibqp, union ib_gid *gid, u16 lid) | |||
1265 | mutex_lock(&mqp->mutex); | 1265 | mutex_lock(&mqp->mutex); |
1266 | ge = find_gid_entry(mqp, gid->raw); | 1266 | ge = find_gid_entry(mqp, gid->raw); |
1267 | if (ge) { | 1267 | if (ge) { |
1268 | spin_lock(&mdev->iboe.lock); | 1268 | spin_lock_bh(&mdev->iboe.lock); |
1269 | ndev = ge->added ? mdev->iboe.netdevs[ge->port - 1] : NULL; | 1269 | ndev = ge->added ? mdev->iboe.netdevs[ge->port - 1] : NULL; |
1270 | if (ndev) | 1270 | if (ndev) |
1271 | dev_hold(ndev); | 1271 | dev_hold(ndev); |
1272 | spin_unlock(&mdev->iboe.lock); | 1272 | spin_unlock_bh(&mdev->iboe.lock); |
1273 | if (ndev) | 1273 | if (ndev) |
1274 | dev_put(ndev); | 1274 | dev_put(ndev); |
1275 | list_del(&ge->list); | 1275 | list_del(&ge->list); |
@@ -1554,7 +1554,7 @@ static int mlx4_ib_addr_event(int event, struct net_device *event_netdev, | |||
1554 | return 0; | 1554 | return 0; |
1555 | 1555 | ||
1556 | iboe = &ibdev->iboe; | 1556 | iboe = &ibdev->iboe; |
1557 | spin_lock(&iboe->lock); | 1557 | spin_lock_bh(&iboe->lock); |
1558 | 1558 | ||
1559 | for (port = 1; port <= ibdev->dev->caps.num_ports; ++port) | 1559 | for (port = 1; port <= ibdev->dev->caps.num_ports; ++port) |
1560 | if ((netif_is_bond_master(real_dev) && | 1560 | if ((netif_is_bond_master(real_dev) && |
@@ -1564,7 +1564,7 @@ static int mlx4_ib_addr_event(int event, struct net_device *event_netdev, | |||
1564 | update_gid_table(ibdev, port, gid, | 1564 | update_gid_table(ibdev, port, gid, |
1565 | event == NETDEV_DOWN, 0); | 1565 | event == NETDEV_DOWN, 0); |
1566 | 1566 | ||
1567 | spin_unlock(&iboe->lock); | 1567 | spin_unlock_bh(&iboe->lock); |
1568 | return 0; | 1568 | return 0; |
1569 | 1569 | ||
1570 | } | 1570 | } |
@@ -1742,7 +1742,7 @@ static int mlx4_ib_init_gid_table(struct mlx4_ib_dev *ibdev) | |||
1742 | } | 1742 | } |
1743 | 1743 | ||
1744 | read_lock(&dev_base_lock); | 1744 | read_lock(&dev_base_lock); |
1745 | spin_lock(&iboe->lock); | 1745 | spin_lock_bh(&iboe->lock); |
1746 | 1746 | ||
1747 | for_each_netdev(&init_net, dev) { | 1747 | for_each_netdev(&init_net, dev) { |
1748 | u8 port = mlx4_ib_get_dev_port(dev, ibdev); | 1748 | u8 port = mlx4_ib_get_dev_port(dev, ibdev); |
@@ -1753,7 +1753,7 @@ static int mlx4_ib_init_gid_table(struct mlx4_ib_dev *ibdev) | |||
1753 | } | 1753 | } |
1754 | } | 1754 | } |
1755 | 1755 | ||
1756 | spin_unlock(&iboe->lock); | 1756 | spin_unlock_bh(&iboe->lock); |
1757 | read_unlock(&dev_base_lock); | 1757 | read_unlock(&dev_base_lock); |
1758 | out: | 1758 | out: |
1759 | return err; | 1759 | return err; |
@@ -1770,7 +1770,7 @@ static void mlx4_ib_scan_netdevs(struct mlx4_ib_dev *ibdev, | |||
1770 | 1770 | ||
1771 | iboe = &ibdev->iboe; | 1771 | iboe = &ibdev->iboe; |
1772 | 1772 | ||
1773 | spin_lock(&iboe->lock); | 1773 | spin_lock_bh(&iboe->lock); |
1774 | mlx4_foreach_ib_transport_port(port, ibdev->dev) { | 1774 | mlx4_foreach_ib_transport_port(port, ibdev->dev) { |
1775 | enum ib_port_state port_state = IB_PORT_NOP; | 1775 | enum ib_port_state port_state = IB_PORT_NOP; |
1776 | struct net_device *old_master = iboe->masters[port - 1]; | 1776 | struct net_device *old_master = iboe->masters[port - 1]; |
@@ -1842,7 +1842,7 @@ static void mlx4_ib_scan_netdevs(struct mlx4_ib_dev *ibdev, | |||
1842 | } | 1842 | } |
1843 | } | 1843 | } |
1844 | 1844 | ||
1845 | spin_unlock(&iboe->lock); | 1845 | spin_unlock_bh(&iboe->lock); |
1846 | 1846 | ||
1847 | if (update_qps_port > 0) | 1847 | if (update_qps_port > 0) |
1848 | mlx4_ib_update_qps(ibdev, dev, update_qps_port); | 1848 | mlx4_ib_update_qps(ibdev, dev, update_qps_port); |