How does the symmetric RSS hashing for Mellanox ConnectX-4 on AGX-Orin (mlx5-core) work?


We are using Mellanox ConnectX-4 on AGX-Orin. In its kernel module mlx5-core, the symmetric RSS hashing is by default on:

MLX5_SET(tirc, tirc, rx_hash_symmetric, 1);

Without the symmetric RSS hashing (by modifying the kernel module source), the hash value that we calculate using the hash-key from ethtool is the same as the one from the NIC, which is expected. But, with the symmetric RSS hashing on, the NIC returns a different hash value than the one we calculate. So far we didn’t find any useful information online about how the symmetric RSS hashing is implemented by the Mellanox card, so we are not able to work out the same hash value. So, could you please tell us how does Mellanox ConnectX-4 calculate the hash value in the symmetric hashing situation? Modifying the kernel source is not an option for our customers.


hi zhuda

This is a reserverd bit, The function of this bit was also reserved.
And we can not tell you the detial HW hash mechanism.
for you requirement, i think you can set the hash func by ethtool.