[ovs-dev] [PATCH] netdev-dpdk: don't set rx mq mode for net_virtio

Flavio Leitner fbl at sysclose.org
Mon May 18 17:26:17 UTC 2020


On Thu, May 14, 2020 at 03:38:44PM +0200, Jaime Caamaño Ruiz wrote:
> Since DPDK 19.11 [1], it is not allowed to set any RX mq mode for virtio
> driver.
> 
> [1] https://github.com/DPDK/dpdk/commit/13b3137f3b7c8f866947a9b34e06a8aec0d084f7
> 
> Signed-off-by: Jaime Caamaño Ruiz <jcaamano at suse.com>
> ---
>  lib/netdev-dpdk.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
> index 44ebf96da..022e3af92 100644
> --- a/lib/netdev-dpdk.c
> +++ b/lib/netdev-dpdk.c
> @@ -965,6 +965,12 @@ dpdk_eth_dev_port_config(struct netdev_dpdk *dev, int n_rxq, int n_txq)
>  
>      rte_eth_dev_info_get(dev->port_id, &info);
>  
> +    /* As of DPDK 19.11, it is not allowed to set a mq_mode for
> +     * virtio PMD driver. */
> +    if (!strcmp(info.driver_name, "net_virtio")) {
> +        conf.rxmode.mq_mode = ETH_MQ_RX_NONE;
> +    }
> +

After this we would have the variable initialized in two different
places. I suggest the following for best readability:

diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index 44ebf96da..1a3471ce9 100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -163,7 +163,6 @@ typedef uint16_t dpdk_port_t;
 
 static const struct rte_eth_conf port_conf = {
     .rxmode = {
-        .mq_mode = ETH_MQ_RX_RSS,
         .split_hdr_size = 0,
         .offloads = 0,
     },
@@ -965,6 +964,14 @@ dpdk_eth_dev_port_config(struct netdev_dpdk *dev, int n_rxq, int n_txq)
 
     rte_eth_dev_info_get(dev->port_id, &info);
 
+    /* As of DPDK 19.11, it is not allowed to set a mq_mode for
+     * virtio PMD driver. */
+    if (!strcmp(info.driver_name, "net_virtio")) {
+        conf.rxmode.mq_mode = ETH_MQ_RX_NONE;
+    } else {
+        conf.rxmode.mq_mode = ETH_MQ_RX_RSS;
+    }
+
     /* As of DPDK 17.11.1 a few PMDs require to explicitly enable
      * scatter to support jumbo RX.
      * Setting scatter for the device is done after checking for

What do you think?
Thanks
fbl



>      /* As of DPDK 17.11.1 a few PMDs require to explicitly enable
>       * scatter to support jumbo RX.
>       * Setting scatter for the device is done after checking for
> -- 
> 2.16.4
> 
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev

-- 
fbl


More information about the dev mailing list