Test-Label: intel-Testing Test-Status: SUCCESS _Testing PASS_ DPDK git repo: dpdk commit 3e3c7f3fa5ac3f2748a4463d87e73eb28024b401 Author: Hengqi Chen Date: Mon Jun 9 07:23:47 2025 +0000 net/virtio: fix check of threshold for Tx freeing Like most drivers, make the fast path of virtio_xmit_cleanup() behave as described by the comments of rte_eth_txconf::tx_free_thresh ([0]): Start freeing Tx buffers if there are less free descriptors than this value. The rationale behind this change is that: * vq->vq_nentries is set during device probe with the queue size specified by vhost backend, this value does not reflect the real nb_tx_desc * the real available tx desc is set to vq->vq_free_cnt via the nb_tx_desc param of rte_eth_tx_queue_setup() API * so `nb_used > vq->vq_nentries - vq->vq_free_thresh` could never be true if say nb_tx_desc=2048, vq->vq_nentries=4096, vq->vq_free_thresh=32, see bug report 1716 ([1]) for details. [0]: https://github.com/DPDK/dpdk/commit/72514b5d5543 [1]: https://bugs.dpdk.org/show_bug.cgi?id=1716 Bugzilla ID: 1716 Fixes: 72514b5d5543 ("ethdev: fix check of threshold for Tx freeing") Cc: stable@dpdk.org Signed-off-by: Baoyuan Li Signed-off-by: Hengqi Chen Reviewed-by: Maxime Coquelin Testing Summary : 18 Case Done, 18 Successful, 0 Failures TestPlan: pf_smoke: http://git.dpdk.org/tools/dts/tree/test_plans/pf_smoke_test_plan.rst vf_smoke: http://git.dpdk.org/tools/dts/tree/test_plans/vf_smoke_test_plan.rst virtio_smoke: http://git.dpdk.org/tools/dts/tree/test_plans/virtio_smoke_test_plan.rst TestSuite: pf_smoke: http://git.dpdk.org/tools/dts/tree/tests/TestSuite_pf_smoke.py vf_smoke: http://git.dpdk.org/tools/dts/tree/tests/TestSuite_vf_smoke.py virtio_smoke: http://git.dpdk.org/tools/dts/tree/tests/TestSuite_virtio_smoke.py OS : Ubuntu 22.04.2 LTS Kernel : 5.15.0-60-generic GCC : 11.3.0-1ubuntu1~22.04 NIC : Ethernet Controller E810-C for SFP Target : x86_64-native-linuxapp-gcc Test result details: +-------------+---------------------------+-------+ | suite | case | status| +-------------+---------------------------+-------+ | asan_smoke | test_rxtx_with_ASan_enable| passed| | pf_smoke | test_pf_jumbo_frames | passed| | pf_smoke | test_pf_rss | passed| | pf_smoke | test_pf_tx_rx_queue | passed| | vf_smoke | test_vf_jumbo_frames | passed| | vf_smoke | test_vf_rss | passed| | vf_smoke | test_vf_tx_rx_queue | passed| | virtio_smoke| test_virtio_loopback | passed| | virtio_smoke| test_virtio_pvp | passed| +-------------+---------------------------+-------+ OS : Ubuntu 22.04.2 LTS Kernel : 5.15.0-60-generic GCC : 11.3.0-1ubuntu1~22.04 NIC : Ethernet Controller XL710 for 40GbE QSFP+ Target : x86_64-native-linuxapp-gcc Test result details: +-------------+---------------------------+-------+ | suite | case | status| +-------------+---------------------------+-------+ | asan_smoke | test_rxtx_with_ASan_enable| passed| | pf_smoke | test_pf_jumbo_frames | passed| | pf_smoke | test_pf_rss | passed| | pf_smoke | test_pf_tx_rx_queue | passed| | vf_smoke | test_vf_rss | passed| | vf_smoke | test_vf_tx_rx_queue | passed| | vf_smoke | test_vf_jumbo_frames | n/a | | virtio_smoke| test_virtio_loopback | passed| | virtio_smoke| test_virtio_pvp | passed| +-------------+---------------------------+-------+ DPDK STV team