RDMA/ucma: Support query resolved service records

Enable user-space to query resolved service records through a ucma
command when a RDMA_CM_EVENT_ADDRINFO_RESOLVED event is received.

Signed-off-by: Or Har-Toov <ohartoov@nvidia.com>
Signed-off-by: Mark Zhang <markzhang@nvidia.com>
Reviewed-by: Vlad Dumitrescu <vdumitrescu@nvidia.com>
Link: https://patch.msgid.link/1090ee7c00c3f8058c4f9e7557de983504a16715.1751279794.git.leonro@nvidia.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
Mark Zhang
2025-08-13 06:16:07 -04:00
committed by Leon Romanovsky
parent a6404823fe
commit 810f874eda
3 changed files with 61 additions and 1 deletions
+14
View File
@@ -74,4 +74,18 @@ struct ib_user_path_rec {
__u8 preference;
};
struct ib_user_service_rec {
__be64 id;
__u8 gid[16];
__be16 pkey;
__u8 reserved[2];
__be32 lease;
__u8 key[16];
__u8 name[64];
__u8 data_8[16];
__be16 data_16[8];
__be32 data_32[4];
__be64 data_64[2];
};
#endif /* IB_USER_SA_H */
+7 -1
View File
@@ -148,7 +148,8 @@ struct rdma_ucm_resolve_route {
enum {
RDMA_USER_CM_QUERY_ADDR,
RDMA_USER_CM_QUERY_PATH,
RDMA_USER_CM_QUERY_GID
RDMA_USER_CM_QUERY_GID,
RDMA_USER_CM_QUERY_IB_SERVICE
};
struct rdma_ucm_query {
@@ -188,6 +189,11 @@ struct rdma_ucm_query_path_resp {
struct ib_path_rec_data path_data[];
};
struct rdma_ucm_query_ib_service_resp {
__u32 num_service_recs;
struct ib_user_service_rec recs[];
};
struct rdma_ucm_conn_param {
__u32 qp_num;
__u32 qkey;