net/mlx5e: Fix update of hash function/key via ethtool
authorGal Pressman <galp@mellanox.com>
Thu, 12 Jan 2017 14:25:46 +0000 (16:25 +0200)
committerSaeed Mahameed <saeedm@mellanox.com>
Sun, 29 Jan 2017 21:31:18 +0000 (23:31 +0200)
commita100ff3eef193d2d79daf98dcd97a54776ffeb78
tree889344bd8ced782a3405a61b3b7db8dba92aa0b9
parent1d3398facd08a7fd4202f269317a95668eb880b9
net/mlx5e: Fix update of hash function/key via ethtool

Modifying TIR hash should change selected fields bitmask in addition to
the function and key.

Formerly, Only on ethool mlx5e_set_rxfh "ethtoo -X" we would not set this
field resulting in zeroing of its value, which means no packet fields are
used for RX RSS hash calculation thus causing all traffic to arrive in
RQ[0].

On driver load out of the box we don't have this issue, since the TIR
hash is fully created from scratch.

Tested:
ethtool -X ethX hkey  <new key>
ethtool -X ethX hfunc <new func>
ethtool -X ethX equal <new indirection table>

All cases are verified with TCP Multi-Stream traffic over IPv4 & IPv6.

Fixes: bdfc028de1b3 ("net/mlx5e: Fix ethtool RX hash func configuration change")
Signed-off-by: Gal Pressman <galp@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_ethtool.c
drivers/net/ethernet/mellanox/mlx5/core/en_main.c