Re: [PATCH net-next v4 1/6] net: ethtool: allow symmetric-xor RSS hash for any flow type
From: Alexander Duyck <hidden>
Date: 2023-10-17 18:38:30
Also in:
intel-wired-lan, linux-doc
On Mon, Oct 16, 2023 at 4:31 PM Jakub Kicinski [off-list ref] wrote:
On Mon, 16 Oct 2023 15:55:21 -0700 Alexander Duyck wrote:quoted
It would make more sense to just add it as a variant hash function of toeplitz. If you did it right you could probably make the formatting pretty, something like: RSS hash function: toeplitz: on symmetric xor: on xor: off crc32: off It doesn't make sense to place it in the input flags and will just cause quick congestion as things get added there. This is an algorithm change so it makes more sense to place it there.Algo is also a bit confusing, it's more like key pre-processing? There's nothing toeplitz about xoring input fields. Works as well for CRC32.. or XOR.
I agree that the change to the algorithm doesn't necessarily have anything to do with toeplitz, however it is still a change to the algorithm by performing the extra XOR on the inputs prior to processing. That is why I figured it might make sense to just add a new hfunc value that would mean toeplitz w/ symmetric XOR.
We can use one of the reserved fields of struct ethtool_rxfh to carry this extension. I think I asked for this at some point, but there's only so much repeated feedback one can send in a day :(
Why add an extra reserved field when this is just a variant on a hash function? I view it as not being dissimilar to how we handle TSO or tx-checksumming. It would make sense to me to just set something like toeplitz-symmetric-xor to on in order to turn this on.