From: Takashi Kozu <takkozu@amazon.com>
To: <anthony.l.nguyen@intel.com>
Cc: <przemyslaw.kitszel@intel.com>, <andrew+netdev@lunn.ch>,
<davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>,
<pabeni@redhat.com>, <intel-wired-lan@lists.osuosl.org>,
<netdev@vger.kernel.org>, <aleksandr.loktionov@intel.com>,
<pmenzel@molgen.mpg.de>, <piotr.kwapulinski@intel.com>,
<enjuk@amazon.com>, Takashi Kozu <takkozu@amazon.com>
Subject: [Intel-wired-lan] [PATCH iwl-next v4 0/3] igb: add RSS key get/set support
Date: Tue, 20 Jan 2026 18:34:37 +0900 [thread overview]
Message-ID: <20260120093441.70075-5-takkozu@amazon.com> (raw)
This series adds ethtool get/set support for the RSS hash key in the igb
driver.
- `ethtool -x <dev>` to display the RSS key
- `ethtool -X <dev> hkey <key>` to configure the RSS key
Without patch:
# ethtool -x $DEV | grep key -A1
RSS hash key:
Operation not supported
# ethtool -X $DEV hkey 00:00:00:00:00:00:00:00:00:00:00:00:000
Cannot set RX flow hash configuration:
Hash key setting not supported
With patch:
# ethtool -x $DEV | grep key -A1
RSS hash key:
86:5d:11:56:bd:6f:20:38:3b:f8:bb:df:00:3a:b0:24:95:9f:f9:f4:25:a3:01:3e:4a:15:d6:7c:4d:af:39:7e:4a:95:f2:fd:f6:b6:26:f7
# ethtool -X $DEV hkey 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
# ethtool -x $DEV | grep key -A1
RSS hash key:
00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
<Changelog>
v4:
- modify the position of the declaration in the igb_write_rss_key() so that it is at the start of the block.
v3:
- add ASSERT_RTNL() to explicitly show that an rtnl lock is being used
- Move netdev_rss_key_fill() function from igb_setup_mrqc() to igb_sw_init()
- Add kernel-doc header to igb_write_rss_key()
<Test>
- tools/testing/selftests/drivers/net/hw/rss_api.py is successful
Run the following command
# NETIF=enp0s3 python tools/testing/selftests/drivers/net/hw/rss_api.py | grep -v "# Exception"
Then, I checked the diffs before and after applying the patch
$ diff beforePatch.txt afterPatch.txt
9c9
< not ok 6 rss_api.test_rxfh_nl_set_key
---
> ok 6 rss_api.test_rxfh_nl_set_key
16c16
< # Totals: pass:4 fail:8 xfail:0 xpass:0 skip:0 error:0
---
> # Totals: pass:5 fail:7 xfail:0 xpass:0 skip:0 error:0
The failing tests originally fails due to hardware.
- tools/testing/selftests/drivers/net/hw/toeplitz.py is untested since there is no actual hardware, but since the logic around wr32() is preserved as it is, key writing to the device remain the same.
v2: Fix typos (igc_* → igb_*)
https://lore.kernel.org/intel-wired-lan/20260108052020.84218-5-takkozu@amazon.com/T/
v1: https://lore.kernel.org/all/20251205082106.4028-5-takkozu@amazon.com/
Takashi Kozu (3):
igb: prepare for RSS key get/set support
igb: expose RSS key via ethtool get_rxfh
igb: allow configuring RSS key via ethtool set_rxfh
drivers/net/ethernet/intel/igb/igb.h | 4 +
drivers/net/ethernet/intel/igb/igb_ethtool.c | 86 ++++++++++++++------
drivers/net/ethernet/intel/igb/igb_main.c | 9 +-
3 files changed, 69 insertions(+), 30 deletions(-)
--
2.52.0
WARNING: multiple messages have this Message-ID (diff)
From: Takashi Kozu <takkozu@amazon.com>
To: <anthony.l.nguyen@intel.com>
Cc: <przemyslaw.kitszel@intel.com>, <andrew+netdev@lunn.ch>,
<davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>,
<pabeni@redhat.com>, <intel-wired-lan@lists.osuosl.org>,
<netdev@vger.kernel.org>, <aleksandr.loktionov@intel.com>,
<pmenzel@molgen.mpg.de>, <piotr.kwapulinski@intel.com>,
<enjuk@amazon.com>, Takashi Kozu <takkozu@amazon.com>
Subject: [PATCH iwl-next v4 0/3] igb: add RSS key get/set support
Date: Tue, 20 Jan 2026 18:34:37 +0900 [thread overview]
Message-ID: <20260120093441.70075-5-takkozu@amazon.com> (raw)
This series adds ethtool get/set support for the RSS hash key in the igb
driver.
- `ethtool -x <dev>` to display the RSS key
- `ethtool -X <dev> hkey <key>` to configure the RSS key
Without patch:
# ethtool -x $DEV | grep key -A1
RSS hash key:
Operation not supported
# ethtool -X $DEV hkey 00:00:00:00:00:00:00:00:00:00:00:00:000
Cannot set RX flow hash configuration:
Hash key setting not supported
With patch:
# ethtool -x $DEV | grep key -A1
RSS hash key:
86:5d:11:56:bd:6f:20:38:3b:f8:bb:df:00:3a:b0:24:95:9f:f9:f4:25:a3:01:3e:4a:15:d6:7c:4d:af:39:7e:4a:95:f2:fd:f6:b6:26:f7
# ethtool -X $DEV hkey 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
# ethtool -x $DEV | grep key -A1
RSS hash key:
00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
<Changelog>
v4:
- modify the position of the declaration in the igb_write_rss_key() so that it is at the start of the block.
v3:
- add ASSERT_RTNL() to explicitly show that an rtnl lock is being used
- Move netdev_rss_key_fill() function from igb_setup_mrqc() to igb_sw_init()
- Add kernel-doc header to igb_write_rss_key()
<Test>
- tools/testing/selftests/drivers/net/hw/rss_api.py is successful
Run the following command
# NETIF=enp0s3 python tools/testing/selftests/drivers/net/hw/rss_api.py | grep -v "# Exception"
Then, I checked the diffs before and after applying the patch
$ diff beforePatch.txt afterPatch.txt
9c9
< not ok 6 rss_api.test_rxfh_nl_set_key
---
> ok 6 rss_api.test_rxfh_nl_set_key
16c16
< # Totals: pass:4 fail:8 xfail:0 xpass:0 skip:0 error:0
---
> # Totals: pass:5 fail:7 xfail:0 xpass:0 skip:0 error:0
The failing tests originally fails due to hardware.
- tools/testing/selftests/drivers/net/hw/toeplitz.py is untested since there is no actual hardware, but since the logic around wr32() is preserved as it is, key writing to the device remain the same.
v2: Fix typos (igc_* → igb_*)
https://lore.kernel.org/intel-wired-lan/20260108052020.84218-5-takkozu@amazon.com/T/
v1: https://lore.kernel.org/all/20251205082106.4028-5-takkozu@amazon.com/
Takashi Kozu (3):
igb: prepare for RSS key get/set support
igb: expose RSS key via ethtool get_rxfh
igb: allow configuring RSS key via ethtool set_rxfh
drivers/net/ethernet/intel/igb/igb.h | 4 +
drivers/net/ethernet/intel/igb/igb_ethtool.c | 86 ++++++++++++++------
drivers/net/ethernet/intel/igb/igb_main.c | 9 +-
3 files changed, 69 insertions(+), 30 deletions(-)
--
2.52.0
next reply other threads:[~2026-01-20 9:35 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-20 9:34 Takashi Kozu [this message]
2026-01-20 9:34 ` [PATCH iwl-next v4 0/3] igb: add RSS key get/set support Takashi Kozu
2026-01-20 9:34 ` [Intel-wired-lan] [PATCH iwl-next v4 1/3] igb: prepare for " Takashi Kozu
2026-01-20 9:34 ` Takashi Kozu
2026-01-20 9:36 ` [Intel-wired-lan] " Loktionov, Aleksandr
2026-01-20 9:36 ` Loktionov, Aleksandr
2026-01-20 15:26 ` [Intel-wired-lan] " Kwapulinski, Piotr
2026-01-20 15:26 ` Kwapulinski, Piotr
2026-01-20 9:34 ` [Intel-wired-lan] [PATCH iwl-next v4 2/3] igb: expose RSS key via ethtool get_rxfh Takashi Kozu
2026-01-20 9:34 ` Takashi Kozu
2026-01-20 9:34 ` [Intel-wired-lan] [PATCH iwl-next v4 3/3] igb: allow configuring RSS key via ethtool set_rxfh Takashi Kozu
2026-01-20 9:34 ` Takashi Kozu
2026-01-25 13:12 ` [Intel-wired-lan] " Kohei Enju
2026-01-25 13:12 ` Kohei Enju
2026-01-27 22:33 ` [Intel-wired-lan] " Tony Nguyen
2026-01-27 22:33 ` Tony Nguyen
2026-01-28 6:09 ` [Intel-wired-lan] [PATCH iwl-next v4 3/3] igb: allow configuring RSS key via Kohei Enju
2026-01-28 6:09 ` Kohei Enju
2026-01-28 17:33 ` [Intel-wired-lan] " Tony Nguyen
2026-01-28 17:33 ` Tony Nguyen
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=20260120093441.70075-5-takkozu@amazon.com \
--to=takkozu@amazon.com \
--cc=aleksandr.loktionov@intel.com \
--cc=andrew+netdev@lunn.ch \
--cc=anthony.l.nguyen@intel.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=enjuk@amazon.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=piotr.kwapulinski@intel.com \
--cc=pmenzel@molgen.mpg.de \
--cc=przemyslaw.kitszel@intel.com \
/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.