vmxnet3: use static RSS key
Rather than generating a different RSS key on each boot, just use a predetermined value that will map same flow to same value on every device for more predictable testing. This is already done on most hardware drivers. Initial key value just some arbitrary bits extracted once from /dev/random. Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4db37a7856
commit
66d3591036
|
@ -2157,6 +2157,14 @@ vmxnet3_setup_driver_shared(struct vmxnet3_adapter *adapter)
|
|||
|
||||
if (adapter->rss) {
|
||||
struct UPT1_RSSConf *rssConf = adapter->rss_conf;
|
||||
static const uint8_t rss_key[UPT1_RSS_MAX_KEY_SIZE] = {
|
||||
0x3b, 0x56, 0xd1, 0x56, 0x13, 0x4a, 0xe7, 0xac,
|
||||
0xe8, 0x79, 0x09, 0x75, 0xe8, 0x65, 0x79, 0x28,
|
||||
0x35, 0x12, 0xb9, 0x56, 0x7c, 0x76, 0x4b, 0x70,
|
||||
0xd8, 0x56, 0xa3, 0x18, 0x9b, 0x0a, 0xee, 0xf3,
|
||||
0x96, 0xa6, 0x9f, 0x8f, 0x9e, 0x8c, 0x90, 0xc9,
|
||||
};
|
||||
|
||||
devRead->misc.uptFeatures |= UPT1_F_RSS;
|
||||
devRead->misc.numRxQueues = adapter->num_rx_queues;
|
||||
rssConf->hashType = UPT1_RSS_HASH_TYPE_TCP_IPV4 |
|
||||
|
@ -2166,7 +2174,8 @@ vmxnet3_setup_driver_shared(struct vmxnet3_adapter *adapter)
|
|||
rssConf->hashFunc = UPT1_RSS_HASH_FUNC_TOEPLITZ;
|
||||
rssConf->hashKeySize = UPT1_RSS_MAX_KEY_SIZE;
|
||||
rssConf->indTableSize = VMXNET3_RSS_IND_TABLE_SIZE;
|
||||
get_random_bytes(&rssConf->hashKey[0], rssConf->hashKeySize);
|
||||
memcpy(rssConf->hashKey, rss_key, sizeof(rss_key));
|
||||
|
||||
for (i = 0; i < rssConf->indTableSize; i++)
|
||||
rssConf->indTable[i] = ethtool_rxfh_indir_default(
|
||||
i, adapter->num_rx_queues);
|
||||
|
|
Loading…
Reference in New Issue