net/mlx5e: ethtool, Support user configuration for RX hash fields
authorAya Levin <ayal@mellanox.com>
Tue, 23 Oct 2018 13:03:33 +0000 (16:03 +0300)
committerSaeed Mahameed <saeedm@mellanox.com>
Thu, 6 Dec 2018 00:00:37 +0000 (16:00 -0800)
commit756c41603a189e4ae9dca77c3c3d80a926d8bedf
tree89a3cfc2325341ef4b3871111eaead08e734cdeb
parentbbeb53b8b2c92fd4e5b51e8fd9ab1c4000e4d350
net/mlx5e: ethtool, Support user configuration for RX hash fields

Enable user configuration of RX hash fields that are used for traffic
spreading into RX queues. User can change built-in RSS (Receive Side
Scaling) profiles on the following traffic types: UDP4, UDP6, TCP4 and
TCP6.  This configuration effects both outer and inner headers.  Added
support for ethtool commands: ETHTOOL_SRXFH and ETHTOOL_GRXFH.

Command example respectively:
$ethtool -N eth1 rx-flow-hash tcp4 sdfn
$ethtool -n eth1 rx-flow-hash tcpp4
IP SA
IP DA
L4 bytes 0 & 1 [TCP/UDP src port]
L4 bytes 2 & 3 [TCP/UDP dst port]

Signed-off-by: Aya Levin <ayal@mellanox.com>
Reviewed-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/en.h
drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c
drivers/net/ethernet/mellanox/mlx5/core/en_main.c