original_kernel/drivers/infiniband/hw
Matan Barak 9433c18891 IB/mlx4: Invoke UPDATE_QP for proxy QP1 on MAC changes
When we receive a netdev event indicating a netdev change and/or
a netdev address change, we must change the MAC index used by the
proxy QP1 (in the QP context), otherwise RoCE CM packets sent by the
VF will not carry the same source MAC address as the non-CM packets.

We use the UPDATE_QP command to perform this change.

In order to avoid modifying a QP context based on netdev event,
while the driver attempts to destroy this QP (e.g either the mlx4_ib
or ib_mad modules are unloaded), we use mutex locking in both flows.

Since the relevant mlx4 proxy GSI QP is created indirectly by the
mad module when they create their GSI QP, the mlx4 didn't need to
keep track on that QP prior to this change.

Now, when QP modifications are needed to this QP from within the
driver, we added refernece to it.

Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-05-16 15:12:45 -04:00
..
amso1100
cxgb3
cxgb4 RDMA/cxgb4: Update Kconfig to include Chelsio T5 adapter 2014-04-28 17:29:41 -07:00
ehca
ipath
mlx4 IB/mlx4: Invoke UPDATE_QP for proxy QP1 on MAC changes 2014-05-16 15:12:45 -04:00
mlx5 IB/mlx5: Add block multicast loopback support 2014-04-10 18:43:32 -07:00
mthca IB/mthca: Use pci_enable_msix_exact() instead of pci_enable_msix() 2014-04-10 18:41:34 -07:00
nes
ocrdma
qib IB/qib: Use pci_enable_msix_range() instead of pci_enable_msix() 2014-04-10 18:39:13 -07:00
usnic