When we set Rx offloads RSS hash off in cmdline, then we start
port, if dev->data->dev_conf.rxmode.mq_mode RSS enable(multiple
queues mode), it will load RSS hash in driver and sync to port.

After setting Rx offloads RSS hash off, this patch removes
RTE_ETH_MQ_RX_RSS in port->dev_conf.rxmode.mq_mode to fix this issue.

Fixes: c73a9071877a ("app/testpmd: add commands to test new offload API")

Signed-off-by: Jie Wang <jie1x.w...@intel.com>
---
 app/test-pmd/cmdline.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index d08a1c9777..63b60f196e 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -16180,6 +16180,9 @@ cmd_config_per_port_rx_offload_parsed(void 
*parsed_result,
                port->dev_conf.rxmode.offloads &= ~single_offload;
                for (q = 0; q < nb_rx_queues; q++)
                        port->rx_conf[q].offloads &= ~single_offload;
+
+               if (single_offload & 0x80000)
+                       port->dev_conf.rxmode.mq_mode &= ~RTE_ETH_MQ_RX_RSS;
        }
 
        cmd_reconfig_device_queue(port_id, 1, 1);
-- 
2.25.1

Reply via email to