]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
IB/ipoib: Ignore L3 master device
authorVlad Dumitrescu <vdumitrescu@nvidia.com>
Tue, 16 Sep 2025 11:11:03 +0000 (14:11 +0300)
committerLeon Romanovsky <leon@kernel.org>
Thu, 18 Sep 2025 09:20:48 +0000 (05:20 -0400)
commit42f993d3439827c4959ea77e60620d7ebfb3a477
tree46adba8f618305ed8fda344a3a543d328e3c14df
parentc31e4038c97f355967bf906c0b6914edb4f20d75
IB/ipoib: Ignore L3 master device

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>
drivers/infiniband/ulp/ipoib/ipoib_main.c