diff mbox series

[iproute2-next] devlink: Add health reporter test command support

Message ID 20201001072113.493092-1-jiri@resnulli.us
State New
Headers show
Series [iproute2-next] devlink: Add health reporter test command support | expand

Commit Message

Jiri Pirko Oct. 1, 2020, 7:21 a.m. UTC
From: Jiri Pirko <jiri@nvidia.com>

Add health reporter test command and allow user to trigger a test event.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
---
 bash-completion/devlink   |  2 +-
 devlink/devlink.c         | 11 +++++++++++
 man/man8/devlink-health.8 | 16 ++++++++++++++++
 3 files changed, 28 insertions(+), 1 deletion(-)

Comments

David Ahern Oct. 7, 2020, 6:10 a.m. UTC | #1
On 10/1/20 12:21 AM, Jiri Pirko wrote:
> From: Jiri Pirko <jiri@nvidia.com>
> 
> Add health reporter test command and allow user to trigger a test event.
> 
> Signed-off-by: Jiri Pirko <jiri@nvidia.com>
> ---
>  bash-completion/devlink   |  2 +-
>  devlink/devlink.c         | 11 +++++++++++
>  man/man8/devlink-health.8 | 16 ++++++++++++++++
>  3 files changed, 28 insertions(+), 1 deletion(-)
> 

applied to iproute2-next. Thanks
diff mbox series

Patch

diff --git a/bash-completion/devlink b/bash-completion/devlink
index f710c888652e..7395b5040232 100644
--- a/bash-completion/devlink
+++ b/bash-completion/devlink
@@ -635,7 +635,7 @@  _devlink_health_reporter()
 _devlink_health()
 {
     case $command in
-        show|recover|diagnose|set)
+        show|recover|diagnose|set|test)
             _devlink_health_reporter 0
             if [[ $command == "set" ]]; then
                 case $cword in
diff --git a/devlink/devlink.c b/devlink/devlink.c
index 0374175eda3d..126156a200c9 100644
--- a/devlink/devlink.c
+++ b/devlink/devlink.c
@@ -7055,6 +7055,13 @@  static int cmd_health_diagnose(struct dl *dl)
 					0);
 }
 
+static int cmd_health_test(struct dl *dl)
+{
+	return cmd_health_object_common(dl,
+					DEVLINK_CMD_HEALTH_REPORTER_TEST,
+					0);
+}
+
 static int cmd_health_recover(struct dl *dl)
 {
 	struct nlmsghdr *nlh;
@@ -7259,6 +7266,7 @@  static void cmd_health_help(void)
 	pr_err("Usage: devlink health show [ { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME ]\n");
 	pr_err("       devlink health recover { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME\n");
 	pr_err("       devlink health diagnose { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME\n");
+	pr_err("       devlink health test { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME\n");
 	pr_err("       devlink health dump show { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME\n");
 	pr_err("       devlink health dump clear { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME\n");
 	pr_err("       devlink health set { DEV | DEV/PORT_INDEX } reporter REPORTER_NAME\n");
@@ -7282,6 +7290,9 @@  static int cmd_health(struct dl *dl)
 	} else if (dl_argv_match(dl, "diagnose")) {
 		dl_arg_inc(dl);
 		return cmd_health_diagnose(dl);
+	} else if (dl_argv_match(dl, "test")) {
+		dl_arg_inc(dl);
+		return cmd_health_test(dl);
 	} else if (dl_argv_match(dl, "dump")) {
 		dl_arg_inc(dl);
 		if (dl_argv_match(dl, "show")) {
diff --git a/man/man8/devlink-health.8 b/man/man8/devlink-health.8
index 47b96135ef01..975b8c75d798 100644
--- a/man/man8/devlink-health.8
+++ b/man/man8/devlink-health.8
@@ -41,6 +41,12 @@  devlink-health \- devlink health reporting and recovery
 .B  reporter
 .RI "" REPORTER ""
 
+.ti -8
+.BR "devlink health test"
+.RI "{ " DEV " | " DEV/PORT_INDEX " }"
+.B reporter
+.RI "" REPORTER ""
+
 .ti -8
 .B devlink health dump clear
 .RI "{ " DEV " | " DEV/PORT_INDEX " }"
@@ -105,6 +111,16 @@  This action performs a recovery and increases the recoveries counter on success.
 .I "REPORTER"
 - specifies the reporter's name registered on specified devlink device or port.
 
+.SS devlink health test - Trigger a test event on a reporter.
+
+.PP
+.I "DEV"
+- specifies the devlink device.
+
+.PP
+.I "REPORTER"
+- specifies the reporter's name registered on the devlink device.
+
 .SS devlink health dump show - Display the last saved dump.
 
 .PD 0