ethtool: add CRC32 as an RSS hash function
CRC32 engines are usually easily available in hardware and generate OK spread for RSS hash. Add CRC32 RSS hash function to ethtool API. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
581319c586
commit
abb521e36b
|
@ -60,6 +60,7 @@ enum ethtool_phys_id_state {
|
||||||
enum {
|
enum {
|
||||||
ETH_RSS_HASH_TOP_BIT, /* Configurable RSS hash function - Toeplitz */
|
ETH_RSS_HASH_TOP_BIT, /* Configurable RSS hash function - Toeplitz */
|
||||||
ETH_RSS_HASH_XOR_BIT, /* Configurable RSS hash function - Xor */
|
ETH_RSS_HASH_XOR_BIT, /* Configurable RSS hash function - Xor */
|
||||||
|
ETH_RSS_HASH_CRC32_BIT, /* Configurable RSS hash function - Crc32 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Add your fresh new hash function bits above and remember to update
|
* Add your fresh new hash function bits above and remember to update
|
||||||
|
@ -73,6 +74,7 @@ enum {
|
||||||
|
|
||||||
#define ETH_RSS_HASH_TOP __ETH_RSS_HASH(TOP)
|
#define ETH_RSS_HASH_TOP __ETH_RSS_HASH(TOP)
|
||||||
#define ETH_RSS_HASH_XOR __ETH_RSS_HASH(XOR)
|
#define ETH_RSS_HASH_XOR __ETH_RSS_HASH(XOR)
|
||||||
|
#define ETH_RSS_HASH_CRC32 __ETH_RSS_HASH(CRC32)
|
||||||
|
|
||||||
#define ETH_RSS_HASH_UNKNOWN 0
|
#define ETH_RSS_HASH_UNKNOWN 0
|
||||||
#define ETH_RSS_HASH_NO_CHANGE 0
|
#define ETH_RSS_HASH_NO_CHANGE 0
|
||||||
|
|
|
@ -109,6 +109,7 @@ static const char
|
||||||
rss_hash_func_strings[ETH_RSS_HASH_FUNCS_COUNT][ETH_GSTRING_LEN] = {
|
rss_hash_func_strings[ETH_RSS_HASH_FUNCS_COUNT][ETH_GSTRING_LEN] = {
|
||||||
[ETH_RSS_HASH_TOP_BIT] = "toeplitz",
|
[ETH_RSS_HASH_TOP_BIT] = "toeplitz",
|
||||||
[ETH_RSS_HASH_XOR_BIT] = "xor",
|
[ETH_RSS_HASH_XOR_BIT] = "xor",
|
||||||
|
[ETH_RSS_HASH_CRC32_BIT] = "crc32",
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char
|
static const char
|
||||||
|
|
Loading…
Reference in New Issue