linux/drivers/infiniband/ulp
Vlad Dumitrescu 5061013982 IB/ipoib: Ignore L3 master device
[ Upstream commit 42f993d343 ]

Currently, all master upper netdevices (e.g., bond, VRF) are treated
equally.

When a VRF netdevice is used over an IPoIB netdevice, the expected
netdev resolution is on the lower IPoIB device which has the IP address
assigned to it and not the VRF device.

The rdma_cm module (CMA) tries to match incoming requests to a
particular netdevice. When successful, it also validates that the return
path points to the same device by performing a routing table lookup.
Currently, the former would resolve to the VRF netdevice, while the
latter to the correct lower IPoIB netdevice, leading to failure in
rdma_cm.

Improve this by ignoring the VRF master netdevice, if it exists, and
instead return the lower IPoIB device.

Signed-off-by: Vlad Dumitrescu <vdumitrescu@nvidia.com>
Reviewed-by: Parav Pandit <parav@nvidia.com>
Signed-off-by: Edward Srouji <edwards@nvidia.com>
Link: https://patch.msgid.link/20250916111103.84069-5-edwards@nvidia.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2025-11-13 15:34:27 -05:00
..
ipoib IB/ipoib: Ignore L3 master device 2025-11-13 15:34:27 -05:00
iser IB/iser: Remove unused declaration in header file 2024-09-10 16:41:03 +03:00
isert IB/isert: remove the handling of last WQE reached event 2024-06-26 10:53:29 -03:00
opa_vnic IB: move from strlcpy with unused retval to strscpy 2022-08-21 14:18:02 +03:00
rtrs RDMA/rtrs: Add missing deinit() call 2025-02-08 09:57:46 +01:00
srp RDMA/srp: Fix error handling in srp_add_port 2025-02-08 09:57:40 +01:00
srpt RDMA/srpt: Make slab cache names unique 2024-10-11 14:07:33 -03:00
Makefile RDMA/rtrs: include client and server modules into kernel compilation 2020-05-17 18:57:15 -03:00