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:
Родитель
4db37a7856
Коммит
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);
|
||||
|
|
Загрузка…
Ссылка в новой задаче