Skip to content

Commit 20236bb

Browse files
authored
Merge pull request #1034 from WK-Tseng/fix_vmxnet3_rss_key_len_error
net: vmxnet3: Fix incorrect rss_key_len in RSS mode
2 parents 5cb586b + e6197e7 commit 20236bb

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

lib/ff_dpdk_if.c

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -676,11 +676,22 @@ init_port_start(void)
676676
uint64_t default_rss_hf = RTE_ETH_RSS_PROTO_MASK;
677677
port_conf.rxmode.mq_mode = RTE_ETH_MQ_RX_RSS;
678678
port_conf.rx_adv_conf.rss_conf.rss_hf = default_rss_hf;
679-
if (dev_info.hash_key_size == 52) {
680-
rsskey = default_rsskey_52bytes;
681-
rsskey_len = 52;
679+
switch (dev_info.hash_key_size) {
680+
case 40:
681+
rsskey = default_rsskey_40bytes;
682+
rsskey_len = 40;
683+
break;
684+
case 52:
685+
rsskey = default_rsskey_52bytes;
686+
rsskey_len = 52;
687+
break;
688+
default:
689+
ff_log(FF_LOG_INFO, FF_LOGTYPE_FSTACK_LIB, "Unsupported RSS key length 40 or 52 bytes, use NIC default\n");
690+
rsskey = NULL;
691+
rsskey_len = 0;
692+
break;
682693
}
683-
if (ff_global_cfg.dpdk.symmetric_rss) {
694+
if (ff_global_cfg.dpdk.symmetric_rss && dev_info.hash_key_size != 0) {
684695
ff_log(FF_LOG_INFO, FF_LOGTYPE_FSTACK_LIB, "Use symmetric Receive-side Scaling(RSS) key\n");
685696
rsskey = symmetric_rsskey;
686697
}

0 commit comments

Comments
 (0)