[ovs-discuss] ovs-dpdk: can't set n_txq for dpdk interface

George Diamantopoulos georgediam at gmail.com
Sun Mar 7 03:57:46 UTC 2021


Hello all,

It appears that setting the n_txq option has no effect for dpdk Interfaces,
e.g.: "ovs-vsctl set Interface dpdk-eno1 options:n_txq=2".

n_txq appears to be hardcoded to "5" for my driver (BNX2X PMD), for some
reason.

An additional problem is, the driver won't allow setting n_rxq to a lower
value than n_txq, and with 5 being hardcoded for txq, it means I can only
bring the interface up with 5 rxq as well. For 2 ports, that makes 10 PMD
threads, and I don't want/need to dedicate 10 cores to PMD...

I have tried running DPDK's testpmd with this driver, and it successfully
starts with 1 rxq + 1 txq, so I believe the issue lies with OVS-DPDK.

Indeed, while there is a call of smap_get_int() in lib/netdev-dpdk.c for
n_rxq, there doesn't seem to be one for n_txq. I tried a quick hack to fix
this by replicating dpdk_set_rxq_config() for txq, and calling it
immediately after dpdk_set_rxq_config() is called in the code (it is called
only once), but naturally that didn't work. Perhaps
netdev_dpdk_set_tx_multiq() is involved here, but at that point my
programming skills are beginning to fail me. Even more frustratingly, I
can't seem to find where the dreaded number 5 is defined for transmit
queues in the code...

Are there any known workarounds to this problem? Is it a bug? Thanks!

Best regards,
George
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20210307/f14541be/attachment.html>


More information about the discuss mailing list