The DPDK framework reports the queue state, which is stored in dev->data->tx_queue_state and dev->data->rx_queue_state. The state is maintained by the driver. Users may determine whether a queue participates in packet forwarding based on the state, for example,
[1] 5028f207a4fa ("app/testpmd: fix secondary process packet forwarding" [2] 141a520b35f7 ("app/testpmd: fix primary process not polling all queues") Therefore, the drivers need to modify the queue state in time according to the actual situation, especially when dev_start and dev_stop are called. see [3] for more information. [3] https://inbox.dpdk.org/dev/20230721160422.3848154-1-ferruh.yi...@amd.com/ This patchset also resubmit the patch [2] and makes some fixes on the patch. Jie Hai (36): net/axgbe: fix Rx and Tx queue state net/af_packet: fix Rx and Tx queue state net/af_xdp: fix Rx and Tx queue state net/avp: fix Rx and Tx queue state net/bnx2x: fix Rx and Tx queue state net/bnxt: fix Rx and Tx queue state net/bonding: fix Rx and Tx queue state net/cxgbe: fix Rx and Tx queue state net/dpaa: fix Rx and Tx queue state net/dpaa2: fix Rx and Tx queue state net/e1000: fix Rx and Tx queue state net/ena: fix Rx and Tx queue state net/enetc: fix Rx and Tx queue state net/enic: fix Rx and Tx queue state net/hinic: fix Rx and Tx queue state net/ipn3ke: fix Rx and Tx queue state net/memif: fix Rx and Tx queue state net/mana: fix Rx and Tx queue state net/mlx4: fix Rx and Tx queue state net/mvneta: fix Rx and Tx queue state net/mvpp2: fix Rx and Tx queue state net/netvsc: fix Rx and Tx queue state net/nfp: fix Rx and Tx queue state net/ngbe: fix Rx and Tx queue state net/null: fix Rx and Tx queue state net/octeon_ep: fix Rx and Tx queue state net/octeontx: fix Rx and Tx queue state net/pfe: fix Rx and Tx queue state net/ring: fix Rx and Tx queue state net/sfc: fix Rx and Tx queue state net/softnic: fix Rx and Tx queue state net/txgbe: fix Rx and Tx queue state net/vhost: fix Rx and Tx queue state net/virtio: fix Rx and Tx queue state net/vmxnet3: fix Rx and Tx queue state app/testpmd: fix primary process not polling all queues app/test-pmd/testpmd.c | 25 +++++++++++++++---- drivers/net/af_packet/rte_eth_af_packet.c | 9 +++++++ drivers/net/af_xdp/rte_eth_af_xdp.c | 13 ++++++++++ drivers/net/avp/avp_ethdev.c | 12 +++++++++ drivers/net/axgbe/axgbe_ethdev.c | 7 ++++++ drivers/net/axgbe/axgbe_rxtx.c | 2 ++ drivers/net/bnx2x/bnx2x_ethdev.c | 12 +++++++++ drivers/net/bnxt/bnxt_ethdev.c | 6 +++++ drivers/net/bonding/rte_eth_bond_pmd.c | 10 ++++++++ drivers/net/cxgbe/cxgbe_ethdev.c | 6 +++++ drivers/net/dpaa/dpaa_ethdev.c | 12 +++++++++ drivers/net/dpaa2/dpaa2_ethdev.c | 11 ++++++++ drivers/net/e1000/em_rxtx.c | 8 ++++++ drivers/net/e1000/igb_rxtx.c | 4 +++ drivers/net/ena/ena_ethdev.c | 12 +++++++++ drivers/net/enetc/enetc_ethdev.c | 12 +++++++++ drivers/net/enic/enic_ethdev.c | 6 +++++ drivers/net/hinic/hinic_pmd_ethdev.c | 12 +++++++++ drivers/net/ipn3ke/ipn3ke_representor.c | 12 +++++++++ drivers/net/mana/rx.c | 3 +++ drivers/net/mana/tx.c | 4 +++ drivers/net/memif/rte_eth_memif.c | 16 ++++++++++++ drivers/net/mlx4/mlx4.c | 13 ++++++++++ drivers/net/mvneta/mvneta_ethdev.c | 12 +++++++++ drivers/net/mvpp2/mrvl_ethdev.c | 10 ++++++++ drivers/net/netvsc/hn_ethdev.c | 12 +++++++++ drivers/net/nfp/flower/nfp_flower.c | 8 ++++++ .../net/nfp/flower/nfp_flower_representor.c | 12 +++++++++ drivers/net/nfp/nfp_common.c | 2 ++ drivers/net/nfp/nfp_ethdev.c | 6 +++++ drivers/net/nfp/nfp_ethdev_vf.c | 6 +++++ drivers/net/ngbe/ngbe_rxtx.c | 2 ++ drivers/net/null/rte_eth_null.c | 15 +++++++++++ drivers/net/octeon_ep/otx_ep_ethdev.c | 11 ++++++++ drivers/net/octeontx/octeontx_ethdev.c | 11 ++++++++ drivers/net/pfe/pfe_ethdev.c | 11 ++++++++ drivers/net/ring/rte_eth_ring.c | 15 +++++++++++ drivers/net/sfc/sfc_repr.c | 12 +++++++++ drivers/net/softnic/rte_eth_softnic.c | 12 +++++++++ drivers/net/txgbe/txgbe_rxtx.c | 8 ++++++ drivers/net/vhost/rte_eth_vhost.c | 12 +++++++++ drivers/net/virtio/virtio_ethdev.c | 11 ++++++++ drivers/net/vmxnet3/vmxnet3_ethdev.c | 12 +++++++++ 43 files changed, 422 insertions(+), 5 deletions(-) -- 2.30.0