From: Edward Cree <ecree.xilinx@gmail.com>
To: Daniel Xu <dxu@dxuuu.xyz>,
jdamato@fastly.com, davem@davemloft.net, mkubecek@suse.cz
Cc: kuba@kernel.org, martin.lau@linux.dev, netdev@vger.kernel.org,
kernel-team@meta.com
Subject: Re: [PATCH ethtool-next v2] rxclass: Make output for RSS context action explicit
Date: Tue, 12 Nov 2024 10:03:55 +0000 [thread overview]
Message-ID: <21bcb49a-4542-ddd4-db46-e0ba5f22aa35@gmail.com> (raw)
In-Reply-To: <978e1192c07e970b8944c2a729ae42bf97667a53.1731107871.git.dxu@dxuuu.xyz>
On 11/11/2024 19:05, Daniel Xu wrote:
> Currently `ethtool -n` prints out misleading output if the action for an
> ntuple rule is to redirect to an RSS context. For example:
>
> # ethtool -X eth0 hfunc toeplitz context new start 24 equal 8
> New RSS context is 1
>
> # ethtool -N eth0 flow-type ip6 dst-ip $IP6 context 1
> Added rule with ID 0
>
> # ethtool -n eth0 rule 0
> Filter: 0
> Rule Type: Raw IPv6
> Src IP addr: :: mask: ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
> Dest IP addr: <redacted> mask: ::
> Traffic Class: 0x0 mask: 0xff
> Protocol: 0 mask: 0xff
> L4 bytes: 0x0 mask: 0xffffffff
> RSS Context ID: 1
> Action: Direct to queue 0
>
> The above output suggests that the HW will direct to queue 0 where in
> reality queue 0 is just the base offset from which the redirection table
> lookup in the RSS context is added to.
>
> Fix by making output more clear. Also suppress base offset queue for the
> common case of 0. Example of new output:
>
> # ./ethtool -n eth0 rule 0
> Filter: 0
> Rule Type: Raw IPv6
> Src IP addr: :: mask: ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
> Dest IP addr: <redacted> mask: ::
> Traffic Class: 0x0 mask: 0xff
> Protocol: 0 mask: 0xff
> L4 bytes: 0x0 mask: 0xffffffff
> Action: Direct to RSS context id 1
>
> Signed-off-by: Daniel Xu <dxu@dxuuu.xyz>
Reviewed-by: Edward Cree <ecree.xilinx@gmail.com>
but someone who understands ethtool_get_flow_spec_ring_vf() should
look at this as well to check whether that information's needed too.
> ---
> Changes from v1:
> * Reword to support queue base offset API
> * Fix compile error
> * Improve wording (also a transcription error)
>
> rxclass.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/rxclass.c b/rxclass.c
> index f17e3a5..ac9b529 100644
> --- a/rxclass.c
> +++ b/rxclass.c
> @@ -248,13 +248,17 @@ static void rxclass_print_nfc_rule(struct ethtool_rx_flow_spec *fsp,
>
> rxclass_print_nfc_spec_ext(fsp);
>
> - if (fsp->flow_type & FLOW_RSS)
> - fprintf(stdout, "\tRSS Context ID: %u\n", rss_context);
> -
> if (fsp->ring_cookie == RX_CLS_FLOW_DISC) {
> fprintf(stdout, "\tAction: Drop\n");
> } else if (fsp->ring_cookie == RX_CLS_FLOW_WAKE) {
> fprintf(stdout, "\tAction: Wake-on-LAN\n");
> + } else if (fsp->flow_type & FLOW_RSS) {
> + u64 queue = ethtool_get_flow_spec_ring(fsp->ring_cookie);
> +
> + fprintf(stdout, "\tAction: Direct to RSS context id %u", rss_context);
> + if (queue)
> + fprintf(stdout, " (queue base offset: %llu)", queue);
> + fprintf(stdout, "\n");
> } else {
> u64 vf = ethtool_get_flow_spec_ring_vf(fsp->ring_cookie);
> u64 queue = ethtool_get_flow_spec_ring(fsp->ring_cookie);
>
next prev parent reply other threads:[~2024-11-12 10:03 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-11 19:05 [PATCH ethtool-next v2] rxclass: Make output for RSS context action explicit Daniel Xu
2024-11-11 19:27 ` Joe Damato
2024-11-12 10:03 ` Edward Cree [this message]
2024-11-12 15:40 ` Jakub Kicinski
2024-11-13 1:31 ` Daniel Xu
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=21bcb49a-4542-ddd4-db46-e0ba5f22aa35@gmail.com \
--to=ecree.xilinx@gmail.com \
--cc=davem@davemloft.net \
--cc=dxu@dxuuu.xyz \
--cc=jdamato@fastly.com \
--cc=kernel-team@meta.com \
--cc=kuba@kernel.org \
--cc=martin.lau@linux.dev \
--cc=mkubecek@suse.cz \
--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.