2023-09-28 06:42:35

by Junxian Huang

[permalink] [raw]
Subject: [PATCH 0/2] rdma: Support dumping SRQ resource in raw format

This patchset adds support to dump SRQ resource in raw format with
rdmatool. The corresponding kernel commit is aebf8145e11a
("RDMA/core: Add support to dump SRQ resource in RAW format")

Junxian Huang (1):
rdma: Update uapi headers

wenglianfa (1):
rdma: Add support to dump SRQ resource in raw format

rdma/include/uapi/rdma/rdma_netlink.h | 2 ++
rdma/res-srq.c | 17 ++++++++++++++++-
rdma/res.h | 2 ++
3 files changed, 20 insertions(+), 1 deletion(-)

--
2.30.0


2023-09-28 06:43:59

by Junxian Huang

[permalink] [raw]
Subject: [PATCH 2/2] rdma: Add support to dump SRQ resource in raw format

From: wenglianfa <[email protected]>

Add support to dump SRQ resource in raw format.

This patch relies on the corresponding kernel commit aebf8145e11a
("RDMA/core: Add support to dump SRQ resource in RAW format")

Example:
$ rdma res show srq -r
dev hns3 149000...

$ rdma res show srq -j -r
[{"ifindex":0,"ifname":"hns3","data":[149,0,0,...]}]

Signed-off-by: wenglianfa <[email protected]>
---
rdma/res-srq.c | 17 ++++++++++++++++-
rdma/res.h | 2 ++
2 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/rdma/res-srq.c b/rdma/res-srq.c
index 186ae281..d2581a3f 100644
--- a/rdma/res-srq.c
+++ b/rdma/res-srq.c
@@ -162,6 +162,20 @@ out:
return -EINVAL;
}

+static int res_srq_line_raw(struct rd *rd, const char *name, int idx,
+ struct nlattr **nla_line)
+{
+ if (!nla_line[RDMA_NLDEV_ATTR_RES_RAW])
+ return MNL_CB_ERROR;
+
+ open_json_object(NULL);
+ print_dev(rd, idx, name);
+ print_raw_data(rd, nla_line);
+ newline(rd);
+
+ return MNL_CB_OK;
+}
+
static int res_srq_line(struct rd *rd, const char *name, int idx,
struct nlattr **nla_line)
{
@@ -276,7 +290,8 @@ int res_srq_parse_cb(const struct nlmsghdr *nlh, void *data)
if (ret != MNL_CB_OK)
break;

- ret = res_srq_line(rd, name, idx, nla_line);
+ ret = (rd->show_raw) ? res_srq_line_raw(rd, name, idx, nla_line) :
+ res_srq_line(rd, name, idx, nla_line);
if (ret != MNL_CB_OK)
break;
}
diff --git a/rdma/res.h b/rdma/res.h
index 70e51acd..e880c28b 100644
--- a/rdma/res.h
+++ b/rdma/res.h
@@ -39,6 +39,8 @@ static inline uint32_t res_get_command(uint32_t command, struct rd *rd)
return RDMA_NLDEV_CMD_RES_CQ_GET_RAW;
case RDMA_NLDEV_CMD_RES_MR_GET:
return RDMA_NLDEV_CMD_RES_MR_GET_RAW;
+ case RDMA_NLDEV_CMD_RES_SRQ_GET:
+ return RDMA_NLDEV_CMD_RES_SRQ_GET_RAW;
default:
return command;
}
--
2.30.0

2023-10-02 11:48:00

by Leon Romanovsky

[permalink] [raw]
Subject: Re: [PATCH 0/2] rdma: Support dumping SRQ resource in raw format

On Thu, Sep 28, 2023 at 02:32:00PM +0800, Junxian Huang wrote:
> This patchset adds support to dump SRQ resource in raw format with
> rdmatool. The corresponding kernel commit is aebf8145e11a
> ("RDMA/core: Add support to dump SRQ resource in RAW format")
>
> Junxian Huang (1):
> rdma: Update uapi headers
>
> wenglianfa (1):
> rdma: Add support to dump SRQ resource in raw format
>
> rdma/include/uapi/rdma/rdma_netlink.h | 2 ++
> rdma/res-srq.c | 17 ++++++++++++++++-
> rdma/res.h | 2 ++
> 3 files changed, 20 insertions(+), 1 deletion(-)

rdmatool is part of iproute2 suite and as such To, Cc and Subject should
follow that suite rules. You need to add David to "TO", add Stephen and
netdev and add target (iproute2-next) for this patches.

See this randomly chosen series as an example.
https://lore.kernel.org/netdev/[email protected]/

or latest one
https://lore.kernel.org/netdev/[email protected]/T/#m7ef8e4ce275052d428b4f13ad9f3b41a4bf5d46b

Thanks

>
> --
> 2.30.0
>