linux/net/ethtool
Saeed Mahameed 503757c809 net: ethtool: Fix RSS setting
When user submits a rxfh set command without touching XFRM_SYM_XOR,
rxfh.input_xfrm is set to RXH_XFRM_NO_CHANGE, which is equal to 0xff.

Testing if (rxfh.input_xfrm & RXH_XFRM_SYM_XOR &&
	    !ops->cap_rss_sym_xor_supported)
		return -EOPNOTSUPP;

Will always be true on devices that don't set cap_rss_sym_xor_supported,
since rxfh.input_xfrm & RXH_XFRM_SYM_XOR is always true, if input_xfrm
was not set, i.e RXH_XFRM_NO_CHANGE=0xff, which will result in failure
of any command that doesn't require any change of XFRM, e.g RSS context
or hash function changes.

To avoid this breakage, test if rxfh.input_xfrm != RXH_XFRM_NO_CHANGE
before testing other conditions. Note that the problem will only trigger
with XFRM-aware userspace, old ethtool CLI would continue to work.

Fixes: 0dd415d155 ("net: ethtool: add a NO_CHANGE uAPI for new RXFH's input_xfrm")
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Reviewed-by: Ahmed Zaki <ahmed.zaki@intel.com>
Link: https://patch.msgid.link/20240710225538.43368-1-saeed@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-07-11 17:21:08 -07:00
..
Makefile
bitset.c
bitset.h
cabletest.c
channels.c
coalesce.c
common.c
common.h
debug.c
eee.c
eeprom.c
features.c
fec.c
ioctl.c net: ethtool: Fix RSS setting 2024-07-11 17:21:08 -07:00
linkinfo.c
linkmodes.c
linkstate.c ethtool: netlink: do not return SQI value if link is down 2024-07-11 11:19:07 +02:00
mm.c
module.c
netlink.c
netlink.h
pause.c
phc_vclocks.c
plca.c
privflags.c
pse-pd.c
rings.c
rss.c
stats.c
strset.c
tsinfo.c
tunnels.c
wol.c