diff options
author | 2023-04-16 19:12:22 +0000 | |
---|---|---|
committer | 2023-04-20 16:20:05 -0700 | |
commit | 4f3ed1293feb9502dc254b05802faf1ad3317ac6 (patch) | |
tree | b5fdf88350ddd9ea0681ce657143fa1207258fdb /Kconfig | |
parent | net: bridge: switchdev: don't notify FDB entries with "master dynamic" (diff) | |
download | linux-4f3ed1293feb9502dc254b05802faf1ad3317ac6.tar.gz linux-4f3ed1293feb9502dc254b05802faf1ad3317ac6.tar.bz2 linux-4f3ed1293feb9502dc254b05802faf1ad3317ac6.zip |
ixgbe: Allow flow hash to be set via ethtool
ixgbe currently returns `EINVAL` whenever the flowhash it set by ethtool
because the ethtool code in the kernel passes a non-zero value for hfunc
that ixgbe should allow.
When ethtool is called with `ETHTOOL_SRXFHINDIR`,
`ethtool_set_rxfh_indir` will call ixgbe's set_rxfh function
with `ETH_RSS_HASH_NO_CHANGE`. This value should be accepted.
When ethtool is called with `ETHTOOL_SRSSH`, `ethtool_set_rxfh` will
call ixgbe's set_rxfh function with `rxfh.hfunc`, which appears to be
hardcoded in ixgbe to always be `ETH_RSS_HASH_TOP`. This value should
also be accepted.
Before this patch:
$ sudo ethtool -L eth1 combined 10
$ sudo ethtool -X eth1 default
Cannot set RX flow hash configuration: Invalid argument
After this patch:
$ sudo ethtool -L eth1 combined 10
$ sudo ethtool -X eth1 default
$ sudo ethtool -x eth1
RX flow hash indirection table for eth1 with 10 RX ring(s):
0: 0 1 2 3 4 5 6 7
8: 8 9 0 1 2 3 4 5
16: 6 7 8 9 0 1 2 3
24: 4 5 6 7 8 9 0 1
...
Fixes: 1c7cf0784e4d ("ixgbe: support for ethtool set_rxfh")
Signed-off-by: Joe Damato <jdamato@fastly.com>
Reviewed-by: Sridhar Samudrala <sridhar.samudrala@intel.com>
Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Diffstat (limited to 'Kconfig')
0 files changed, 0 insertions, 0 deletions