summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJack Morgenstein <jackm@dev.mellanox.co.il>2014-09-11 13:11:18 +0200
committerRoland Dreier <roland@purestorage.com>2014-09-22 18:46:53 +0200
commitd24d9f43384b5933867a5786934e130efa8b5c92 (patch)
tree2660b2bea5a32827a131d2cf30bb5c6ddd04ed70 /drivers
parentIB/mlx4: Avoid accessing netdevice when building RoCE qp1 header (diff)
downloadlinux-d24d9f43384b5933867a5786934e130efa8b5c92.tar.xz
linux-d24d9f43384b5933867a5786934e130efa8b5c92.zip
IB/mlx4: Don't update QP1 in native mode
For native functions (non-SR-IOV), there's no reason to update the smac_index, as QP1 is a GSI QP. Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/infiniband/hw/mlx4/main.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx4/main.c b/drivers/infiniband/hw/mlx4/main.c
index 657ce0f810fd..6ad7f7a0e464 100644
--- a/drivers/infiniband/hw/mlx4/main.c
+++ b/drivers/infiniband/hw/mlx4/main.c
@@ -1645,6 +1645,10 @@ static void mlx4_ib_update_qps(struct mlx4_ib_dev *ibdev,
atomic64_set(&ibdev->iboe.mac[port - 1], new_smac);
+ /* no need for update QP1 and mac registration in non-SRIOV */
+ if (!mlx4_is_mfunc(ibdev->dev))
+ return;
+
mutex_lock(&ibdev->qp1_proxy_lock[port - 1]);
qp = ibdev->qp1_proxy[port - 1];
if (qp) {