From: Michael Guralnik <michaelgur@nvidia.com>
To: <dsahern@gmail.com>, <leonro@nvidia.com>
Cc: <jgg@nvidia.com>, <linux-rdma@vger.kernel.org>,
<netdev@vger.kernel.org>, Chiara Meiohas <cmeiohas@nvidia.com>,
Michael Guralnik <michaelgur@nvidia.com>
Subject: [RFC iproute2-next 3/4] rdma: Expose whether RDMA monitoring is supported
Date: Sun, 1 Sep 2024 03:54:55 +0300 [thread overview]
Message-ID: <20240901005456.25275-4-michaelgur@nvidia.com> (raw)
In-Reply-To: <20240901005456.25275-1-michaelgur@nvidia.com>
From: Chiara Meiohas <cmeiohas@nvidia.com>
Extend the "rdma sys" command to display whether RDMA
monitoring is supported.
Example output for kernel where monitoring is supported:
$ rdma sys show
netns shared privileged-qkey off monitor on copy-on-fork on
Example output for kernel where monitoring is not supported:
$ rdma sys show
netns shared privileged-qkey off monitor off copy-on-fork on
Signed-off-by: Chiara Meiohas <cmeiohas@nvidia.com>
Signed-off-by: Michael Guralnik <michaelgur@nvidia.com>
---
man/man8/rdma-system.8 | 9 +++++----
rdma/sys.c | 6 ++++++
rdma/utils.c | 1 +
3 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/man/man8/rdma-system.8 b/man/man8/rdma-system.8
index 554938eb..5373027a 100644
--- a/man/man8/rdma-system.8
+++ b/man/man8/rdma-system.8
@@ -38,8 +38,8 @@ rdma-system \- RDMA subsystem configuration
.SS rdma system set - set RDMA subsystem network namespace mode or
privileged qkey mode
-.SS rdma system show - display RDMA subsystem network namespace mode and
-privileged qkey state
+.SS rdma system show - display RDMA subsystem network namespace mode,
+privileged qkey state and whether RDMA monitoring is supported.
.PP
.I "NEWMODE"
@@ -66,8 +66,8 @@ controlled QKEY or not.
.PP
rdma system show
.RS 4
-Shows the state of RDMA subsystem network namespace mode on the system and
-the state of privileged qkey parameter.
+Shows the state of RDMA subsystem network namespace mode on the system,
+the state of privileged qkey parameter and whether RDMA monitor is supported.
.RE
.PP
rdma system set netns exclusive
@@ -100,6 +100,7 @@ is *not* allowed to specify a controlled QKEY.
.BR rdma (8),
.BR rdma-link (8),
.BR rdma-resource (8),
+.BR rdma-monitor (8),
.BR network_namespaces (7),
.BR namespaces (7),
.br
diff --git a/rdma/sys.c b/rdma/sys.c
index 7dbe4409..9f538e41 100644
--- a/rdma/sys.c
+++ b/rdma/sys.c
@@ -20,6 +20,7 @@ static const char *netns_modes_str[] = {
static int sys_show_parse_cb(const struct nlmsghdr *nlh, void *data)
{
struct nlattr *tb[RDMA_NLDEV_ATTR_MAX] = {};
+ uint8_t mon_mode = 0;
bool cof = false;
mnl_attr_parse(nlh, 0, rd_attr_cb, tb);
@@ -48,6 +49,10 @@ static int sys_show_parse_cb(const struct nlmsghdr *nlh, void *data)
}
+ if (tb[RDMA_NLDEV_SYS_ATTR_MONITOR_MODE])
+ mon_mode = mnl_attr_get_u8(tb[RDMA_NLDEV_SYS_ATTR_MONITOR_MODE]);
+ print_on_off(PRINT_ANY, "monitor", "monitor %s ", mon_mode);
+
if (tb[RDMA_NLDEV_SYS_ATTR_COPY_ON_FORK])
cof = mnl_attr_get_u8(tb[RDMA_NLDEV_SYS_ATTR_COPY_ON_FORK]);
@@ -77,6 +82,7 @@ static int sys_show(struct rd *rd)
{ NULL, sys_show_no_args},
{ "netns", sys_show_no_args},
{ "privileged-qkey", sys_show_no_args},
+ { "monitor", sys_show_no_args},
{ 0 }
};
diff --git a/rdma/utils.c b/rdma/utils.c
index bc104e0f..07cb0224 100644
--- a/rdma/utils.c
+++ b/rdma/utils.c
@@ -478,6 +478,7 @@ static const enum mnl_attr_data_type nldev_policy[RDMA_NLDEV_ATTR_MAX] = {
[RDMA_NLDEV_ATTR_DEV_TYPE] = MNL_TYPE_U8,
[RDMA_NLDEV_ATTR_PARENT_NAME] = MNL_TYPE_STRING,
[RDMA_NLDEV_ATTR_EVENT_TYPE] = MNL_TYPE_U8,
+ [RDMA_NLDEV_SYS_ATTR_MONITOR_MODE] = MNL_TYPE_U8,
};
static int rd_attr_check(const struct nlattr *attr, int *typep)
--
2.17.2
next prev parent reply other threads:[~2024-09-01 0:55 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-01 0:54 [RFC iproute2-next 0/4] Add RDMA monitor support Michael Guralnik
2024-09-01 0:54 ` [RFC iproute2-next 1/4] rdma: Update uapi header Michael Guralnik
2024-09-01 0:54 ` [RFC iproute2-next 2/4] rdma: Add support for rdma monitor Michael Guralnik
2024-09-01 15:44 ` Stephen Hemminger
2024-09-02 2:22 ` David Ahern
2024-09-02 7:54 ` Leon Romanovsky
2024-09-02 16:55 ` David Ahern
2024-09-02 18:12 ` Leon Romanovsky
2024-09-04 15:54 ` Jason Gunthorpe
2024-09-01 0:54 ` Michael Guralnik [this message]
2024-09-01 0:54 ` [RFC iproute2-next 4/4] rdma: Fix typo in rdma-link man page Michael Guralnik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240901005456.25275-4-michaelgur@nvidia.com \
--to=michaelgur@nvidia.com \
--cc=cmeiohas@nvidia.com \
--cc=dsahern@gmail.com \
--cc=jgg@nvidia.com \
--cc=leonro@nvidia.com \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.