lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 30 Aug 2021 10:35:53 +0800
From:   Yufeng Mo <moyufeng@...wei.com>
To:     <davem@...emloft.net>, <kuba@...nel.org>, <mkubecek@...e.cz>,
        <amitc@...lanox.com>, <idosch@...sch.org>, <andrew@...n.ch>,
        <o.rempel@...gutronix.de>, <f.fainelli@...il.com>,
        <jacob.e.keller@...el.com>, <mlxsw@...lanox.com>
CC:     <netdev@...r.kernel.org>, <lipeng321@...wei.com>,
        <moyufeng@...wei.com>, <linuxarm@...wei.com>,
        <linuxarm@...neuler.org>
Subject: [PATCH V2 ethtool-next] netlink: settings: add netlink support for coalesce cqe mode parameter

Add support for "ethtool -C <dev> cqe-mode-rx/cqe-mode-tx on/off"
for setting coalesce cqe mode.

Signed-off-by: Yufeng Mo <moyufeng@...wei.com>
---
ChangeLogs:
V1 -> V2:
         1. update the man page for new paremeters cqe-mode-rx/cqe-mode-tx.
         2. add '\n' in coalesce_reply_cb() after showing new paremeters.
---
 ethtool.8.in       |  2 ++
 ethtool.c          |  2 ++
 netlink/coalesce.c | 16 ++++++++++++++++
 3 files changed, 20 insertions(+)

diff --git a/ethtool.8.in b/ethtool.8.in
index f83d6d1..c187c32 100644
--- a/ethtool.8.in
+++ b/ethtool.8.in
@@ -186,6 +186,8 @@ ethtool \- query or control network driver and hardware settings
 .BN tx\-usecs\-high
 .BN tx\-frames\-high
 .BN sample\-interval
+.B2 cqe\-mode\-rx on off
+.B2 cqe\-mode\-tx on off
 .HP
 .B ethtool \-g|\-\-show\-ring
 .I devname
diff --git a/ethtool.c b/ethtool.c
index 2486caa..a6826e9 100644
--- a/ethtool.c
+++ b/ethtool.c
@@ -5703,6 +5703,8 @@ static const struct option args[] = {
 			  "		[tx-usecs-high N]\n"
 			  "		[tx-frames-high N]\n"
 			  "		[sample-interval N]\n"
+			  "		[cqe-mode-rx on|off]\n"
+			  "		[cqe-mode-tx on|off]\n"
 	},
 	{
 		.opts	= "-g|--show-ring",
diff --git a/netlink/coalesce.c b/netlink/coalesce.c
index 75922a9..15037c2 100644
--- a/netlink/coalesce.c
+++ b/netlink/coalesce.c
@@ -66,6 +66,10 @@ int coalesce_reply_cb(const struct nlmsghdr *nlhdr, void *data)
 	show_u32(tb[ETHTOOL_A_COALESCE_TX_USECS_HIGH], "tx-usecs-high: ");
 	show_u32(tb[ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH], "tx-frame-high: ");
 	putchar('\n');
+	show_bool("rx", "CQE mode RX: %s  ",
+		  tb[ETHTOOL_A_COALESCE_USE_CQE_MODE_RX]);
+	show_bool("tx", "TX: %s\n", tb[ETHTOOL_A_COALESCE_USE_CQE_MODE_TX]);
+	putchar('\n');
 
 	return MNL_CB_OK;
 }
@@ -226,6 +230,18 @@ static const struct param_parser scoalesce_params[] = {
 		.handler	= nl_parse_direct_u32,
 		.min_argc	= 1,
 	},
+	{
+		.arg		= "cqe-mode-rx",
+		.type		= ETHTOOL_A_COALESCE_USE_CQE_MODE_RX,
+		.handler	= nl_parse_u8bool,
+		.min_argc	= 1,
+	},
+	{
+		.arg		= "cqe-mode-tx",
+		.type		= ETHTOOL_A_COALESCE_USE_CQE_MODE_TX,
+		.handler	= nl_parse_u8bool,
+		.min_argc	= 1,
+	},
 	{}
 };
 
-- 
2.8.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ