diff options
author | Mark Zhang <markzhang@nvidia.com> | 2022-09-08 13:09:01 +0300 |
---|---|---|
committer | Leon Romanovsky <leon@kernel.org> | 2022-09-22 12:35:21 +0300 |
commit | 5a3749493394276449cfc4efb417ed267edbd480 (patch) | |
tree | c0f618e26bcf9d9aa763fa8c42daf62d2b7d5e02 /io_uring | |
parent | bf9a9928510a03e445fa4f54bdc0b8e71f4c0067 (diff) | |
download | linux-5a3749493394276449cfc4efb417ed267edbd480.tar.gz |
RDMA/cma: Multiple path records support with netlink channel
Support receiving inbound and outbound IB path records (along with GMP
PathRecord) from user-space service through the RDMA netlink channel.
The LIDs in these 3 PRs can be used in this way:
1. GMP PR: used as the standard local/remote LIDs;
2. DLID of outbound PR: Used as the "dlid" field for outbound traffic;
3. DLID of inbound PR: Used as the "dlid" field for outbound traffic in
responder side.
This is aimed to support adaptive routing. With current IB routing
solution when a packet goes out it's assigned with a fixed DLID per
target, meaning a fixed router will be used.
The LIDs in inbound/outbound path records can be used to identify group
of routers that allow communication with another subnet's entity. With
them packets from an inter-subnet connection may travel through any
router in the set to reach the target.
As confirmed with Jason, when sending a netlink request, kernel uses
LS_RESOLVE_PATH_USE_ALL so that the service knows kernel supports
multiple PRs.
Signed-off-by: Mark Zhang <markzhang@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Link: https://lore.kernel.org/r/2fa2b6c93c4c16c8915bac3cfc4f27be1d60519d.1662631201.git.leonro@nvidia.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Diffstat (limited to 'io_uring')
0 files changed, 0 insertions, 0 deletions