From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B4EBF42547; Fri, 8 Sep 2023 13:32:15 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9FAA0402AF; Fri, 8 Sep 2023 13:32:15 +0200 (CEST) Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by mails.dpdk.org (Postfix) with ESMTP id 1396340042 for ; Fri, 8 Sep 2023 13:32:13 +0200 (CEST) Received: from kwepemi500020.china.huawei.com (unknown [172.30.72.55]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Rhv6h0TwCzrSSW for ; Fri, 8 Sep 2023 19:30:20 +0800 (CST) Received: from localhost.localdomain (10.67.165.2) by kwepemi500020.china.huawei.com (7.221.188.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.31; Fri, 8 Sep 2023 19:32:10 +0800 From: Jie Hai To: CC: , Subject: [PATCH 00/36] fix Rx and Tx queue state Date: Fri, 8 Sep 2023 19:28:25 +0800 Message-ID: <20230908112901.1169869-1-haijie1@huawei.com> X-Mailer: git-send-email 2.30.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.67.165.2] X-ClientProxiedBy: dggems702-chm.china.huawei.com (10.3.19.179) To kwepemi500020.china.huawei.com (7.221.188.8) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org 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.yigit@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