[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CALHRZupJSiwAVzsvRvQiwBDSOaykLLJYKWbHQZjweHd0mrUvtA@mail.gmail.com>
Date: Wed, 27 Apr 2022 19:16:31 +0530
From: sundeep subbaraya <sundeep.lkml@...il.com>
To: Guangbin Huang <huangguangbin2@...wei.com>
Cc: mkubecek@...e.cz, David Miller <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org,
lipeng321@...wei.com, Subbaraya Sundeep <sbhatta@...vell.com>
Subject: Re: [PATCH ethtool-next v2 2/2] ethtool: add support to get/set tx
push by ethtool -G/g
Hi Guangbin,
On Thu, Apr 21, 2022 at 3:47 PM Guangbin Huang
<huangguangbin2@...wei.com> wrote:
>
> 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,
Why min_argc is 0 ? Thanks for syncing kernel headers. I have patch for adding
cqe-size command and will send after these are merged.
Sundeep
> + },
> {}
> };
>
> --
> 2.33.0
>
Powered by blists - more mailing lists