From: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
To: intel-wired-lan@lists.osuosl.org
Cc: netdev@vger.kernel.org, magnus.karlsson@intel.com,
kuba@kernel.org, pabeni@redhat.com, horms@kernel.org,
przemyslaw.kitszel@intel.com, jacob.e.keller@intel.com,
Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Subject: [PATCH iwl-net] ice: keep the RSS hash function on indirection-only updates
Date: Wed, 7 Oct 2026 22:03:11 +0200 [thread overview]
Message-ID: <20261007200311.730443-1-maciej.fijalkowski@intel.com> (raw)
The ethtool core passes RXH_XFRM_NO_CHANGE (0xff) in input_xfrm when a
request does not touch the input transformation, e.g. when it only
rewrites the RSS indirection table. ice_set_rxfh() tests input_xfrm only
for RXH_XFRM_SYM_XOR, which 0xff has set, so such an update switches the
VSI to symmetric Toeplitz hashing behind the user's back.
Once symmetric-xor is reported, the core requires all hashed flow types
to be symmetric for any following RSS set. The GTP flow types hash on
the TEID, so every later netlink RSS update fails with "hash field config
is not symmetric", including the one that would put the indirection
table back.
Keep the current hash function when input_xfrm is RXH_XFRM_NO_CHANGE.
ice_set_rss_hfunc() then returns early and leaves the VSI as it is.
This has been encountered while trying to run xskxceiver within drv-net
tests where one of the setup steps was queue pull out of RSS indirection
table.
Fixes: 352e9bf23813 ("ice: enable symmetric-xor RSS for Toeplitz hash function")
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
---
drivers/net/ethernet/intel/ice/ice_ethtool.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_ethtool.c b/drivers/net/ethernet/intel/ice/ice_ethtool.c
index dffa213734f1..fd2f3cb9faba 100644
--- a/drivers/net/ethernet/intel/ice/ice_ethtool.c
+++ b/drivers/net/ethernet/intel/ice/ice_ethtool.c
@@ -3704,7 +3704,9 @@ ice_set_rxfh(struct net_device *netdev, struct ethtool_rxfh_param *rxfh,
}
/* Update the VSI's hash function */
- if (rxfh->input_xfrm & RXH_XFRM_SYM_XOR)
+ if (rxfh->input_xfrm == RXH_XFRM_NO_CHANGE)
+ hfunc = vsi->rss_hfunc;
+ else if (rxfh->input_xfrm & RXH_XFRM_SYM_XOR)
hfunc = ICE_AQ_VSI_Q_OPT_RSS_HASH_SYM_TPLZ;
err = ice_set_rss_hfunc(vsi, hfunc);
--
2.43.0
next reply other threads:[~2026-10-07 20:03 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-07 20:03 Maciej Fijalkowski [this message]
2026-10-08 15:34 ` [PATCH iwl-net] ice: keep the RSS hash function on indirection-only updates Jakub Kicinski
2026-10-08 18:38 ` Maciej Fijalkowski
2026-10-08 19:22 ` Jakub Kicinski
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=20261007200311.730443-1-maciej.fijalkowski@intel.com \
--to=maciej.fijalkowski@intel.com \
--cc=horms@kernel.org \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=jacob.e.keller@intel.com \
--cc=kuba@kernel.org \
--cc=magnus.karlsson@intel.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--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.