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 PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 21 Apr 2022 16:46:46 +0800 From: Guangbin Huang <huangguangbin2@...wei.com> To: <mkubecek@...e.cz>, <davem@...emloft.net>, <kuba@...nel.org> CC: <netdev@...r.kernel.org>, <lipeng321@...wei.com>, <huangguangbin2@...wei.com> Subject: [PATCH ethtool-next v2 2/2] ethtool: add support to get/set tx push by ethtool -G/g From: Jie Wang <wangjie125@...wei.com> Currently tx push is a standard feature for NICs such as Mellanox, HNS3. But there is no command to set or get this feature. So this patch adds support for "ethtool -G <dev> tx-push on|off" and "ethtool -g <dev>" to set/get tx push mode. Signed-off-by: Jie Wang <wangjie125@...wei.com> --- ethtool.8.in | 4 ++++ ethtool.c | 1 + netlink/rings.c | 7 +++++++ 3 files changed, 12 insertions(+) diff --git a/ethtool.8.in b/ethtool.8.in index 12940e1..a87f31f 100644 --- a/ethtool.8.in +++ b/ethtool.8.in @@ -199,6 +199,7 @@ ethtool \- query or control network driver and hardware settings .BN rx\-jumbo .BN tx .BN rx\-buf\-len +.BN tx\-push .HP .B ethtool \-i|\-\-driver .I devname @@ -573,6 +574,9 @@ Changes the number of ring entries for the Tx ring. .TP .BI rx\-buf\-len \ N Changes the size of a buffer in the Rx ring. +.TP +.BI tx\-push \ on|off +Specifies whether TX push should be enabled. .RE .TP .B \-i \-\-driver diff --git a/ethtool.c b/ethtool.c index 4f5c234..4d2a475 100644 --- a/ethtool.c +++ b/ethtool.c @@ -5733,6 +5733,7 @@ static const struct option args[] = { " [ rx-jumbo N ]\n" " [ tx N ]\n" " [ rx-buf-len N]\n" + " [ tx-push on|off]\n" }, { .opts = "-k|--show-features|--show-offload", diff --git a/netlink/rings.c b/netlink/rings.c index 119178e..a53eed5 100644 --- a/netlink/rings.c +++ b/netlink/rings.c @@ -47,6 +47,7 @@ int rings_reply_cb(const struct nlmsghdr *nlhdr, void *data) show_u32(tb[ETHTOOL_A_RINGS_RX_JUMBO], "RX Jumbo:\t"); show_u32(tb[ETHTOOL_A_RINGS_TX], "TX:\t\t"); show_u32(tb[ETHTOOL_A_RINGS_RX_BUF_LEN], "RX Buf Len:\t\t"); + show_bool("tx-push", "TX Push:\t%s\n", tb[ETHTOOL_A_RINGS_TX_PUSH]); return MNL_CB_OK; } @@ -105,6 +106,12 @@ static const struct param_parser sring_params[] = { .handler = nl_parse_direct_u32, .min_argc = 1, }, + { + .arg = "tx-push", + .type = ETHTOOL_A_RINGS_TX_PUSH, + .handler = nl_parse_u8bool, + .min_argc = 0, + }, {} }; -- 2.33.0
Powered by blists - more mailing lists