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 2BCB9A034F; Mon, 22 Mar 2021 10:40:03 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3996740040; Mon, 22 Mar 2021 10:40:02 +0100 (CET) Received: from szxga07-in.huawei.com (szxga07-in.huawei.com [45.249.212.35]) by mails.dpdk.org (Postfix) with ESMTP id 040A24003D for ; Mon, 22 Mar 2021 10:40:00 +0100 (CET) Received: from DGGEMS402-HUB.china.huawei.com (unknown [172.30.72.60]) by szxga07-in.huawei.com (SkyGuard) with ESMTP id 4F3qDS1vxVz92MD; Mon, 22 Mar 2021 17:38:00 +0800 (CST) Received: from [10.78.49.194] (10.78.49.194) by DGGEMS402-HUB.china.huawei.com (10.3.19.202) with Microsoft SMTP Server id 14.3.498.0; Mon, 22 Mar 2021 17:39:57 +0800 To: Ferruh Yigit , CC: , , Andrew Rybchenko , David Marchand , "Ray Kinsella" , Luca Boccassi References: <1616070332-63414-1-git-send-email-oulijun@huawei.com> From: oulijun Message-ID: <9099c0ed-b57d-cfe3-1560-80899e9c66ed@huawei.com> Date: Mon, 22 Mar 2021 17:39:57 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.78.49.194] X-CFilter-Loop: Reflected Subject: Re: [dpdk-dev] [PATCH] ethdev: add queue state when retrieve queue information 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 Sender: "dev" 在 2021/3/22 17:22, Ferruh Yigit 写道: > On 3/18/2021 12:25 PM, Lijun Ou wrote: >> Currently, upper-layer application could get queue state only >> through pointers such as dev->data->tx_queue_state[queue_id], >> this is not the recommended way to access it. So this patch >> add get queue state when call rte_eth_rx_queue_info_get and >> rte_eth_tx_queue_info_get API. >> >> Note: The hairpin queue is not supported with above >> rte_eth_*x_queue_info_get, so the queue state could be >> RTE_ETH_QUEUE_STATE_STARTED or RTE_ETH_QUEUE_STATE_STOPPED. >> Note: After add queue_state field, the 'struct rte_eth_rxq_info' size >> remains 128B, and the 'struct rte_eth_txq_info' size remains 64B, so >> it could be ABI compatible. >> >> Signed-off-by: Chengwen Feng >> Signed-off-by: Lijun Ou > > <...> > >> diff --git a/lib/librte_ethdev/rte_ethdev.h >> b/lib/librte_ethdev/rte_ethdev.h >> index efda313..3b83c5a 100644 >> --- a/lib/librte_ethdev/rte_ethdev.h >> +++ b/lib/librte_ethdev/rte_ethdev.h >> @@ -1591,6 +1591,8 @@ struct rte_eth_rxq_info { >> uint8_t scattered_rx; /**< scattered packets RX supported. */ >> uint16_t nb_desc; /**< configured number of RXDs. */ >> uint16_t rx_buf_size; /**< hardware receive buffer size. */ >> + /**< Queues state: STARTED(1) / STOPPED(0). */ >> + uint8_t queue_state; >> } __rte_cache_min_aligned; >> /** >> @@ -1600,6 +1602,8 @@ struct rte_eth_rxq_info { >> struct rte_eth_txq_info { >> struct rte_eth_txconf conf; /**< queue config parameters. */ >> uint16_t nb_desc; /**< configured number of TXDs. */ >> + /**< Queues state: STARTED(1) / STOPPED(0). */ >> + uint8_t queue_state; >> } __rte_cache_min_aligned; >> /* Generic Burst mode flag definition, values can be ORed. */ >> > > This is causing an ABI warning [1], but I guess it is safe since the > size of the struct is not changing (cache align). Adding a few more > people to comment. > Yes, thanks.Because we've analyzed it internally.What about other people's opinions? > > [1] > https://travis-ci.com/github/ovsrobot/dpdk/builds/220497651 > . >