+ /*
+ * VF RSS can support at most 4 queues for each VF, even if
+ * 8 queues are available for each VF, it need refine to 4
+ * queues here due to this limitation, otherwise no queue
+ * will receive any packet even RSS is enabled.
+ */
+ if (eth_dev->data->dev_conf.rxmode.mq_mode == ETH_MQ_RX_VMDQ_RSS) {
+ if (RTE_ETH_DEV_SRIOV(eth_dev).nb_q_per_pool == 8) {
+ RTE_ETH_DEV_SRIOV(eth_dev).active = ETH_32_POOLS;
+ RTE_ETH_DEV_SRIOV(eth_dev).nb_q_per_pool = 4;
+ RTE_ETH_DEV_SRIOV(eth_dev).def_pool_q_idx =
+ dev_num_vf(eth_dev) * 4;
+ }
+ }
+