Hi, > -----Original Message----- > From: Yigit, Ferruh <[email protected]> > Sent: Friday, October 22, 2021 5:01 PM > To: Li, Miao <[email protected]>; [email protected]; Hunt, David > <[email protected]> > Cc: Xia, Chenbo <[email protected]>; [email protected]; > Burakov, Anatoly <[email protected]> > Subject: Re: [dpdk-dev] [PATCH v7 4/5] power: modify return of queue_stopped > > On 10/22/2021 9:20 AM, Li, Miao wrote: > > Hi, > > > >> -----Original Message----- > >> From: Yigit, Ferruh <[email protected]> > >> Sent: Friday, October 22, 2021 12:48 AM > >> To: Li, Miao <[email protected]>; [email protected]; Hunt, David > >> <[email protected]> > >> Cc: Xia, Chenbo <[email protected]>; [email protected]; > >> Burakov, Anatoly <[email protected]> > >> Subject: Re: [dpdk-dev] [PATCH v7 4/5] power: modify return of > queue_stopped > >> > >> On 10/18/2021 3:16 PM, Miao Li wrote: > >>> Since some vdevs like virtio and vhost do not support rxq_info_get and > >>> queue state inquiry, the error return value -ENOTSUP need to be ignored > >>> when queue_stopped cannot get rx queue information and rx queue state. > >>> This patch changes the return value of queue_stopped when > >>> rte_eth_rx_queue_info_get return -ENOTSUP to support vdevs which > cannot > >>> provide rx queue information and rx queue state enable power management. > >>> > >> > >> Don't we want to backport this patch? In case later a patch in the main > >> repo relies on this return type and that needs to be merged to LTS... > >> > >> Also need to clarify if this is a fix or not. > > > > Yes, it is a fix. I will backport this patch to LTS in the next version. > > > > If so can you please update the Fixes and stable tags? > > This way it will be part of backporting process.
I will update them in the next version. Thanks, Miao > > > Thanks, > > Miao > > > >> > >>> Signed-off-by: Miao Li <[email protected]> > >>> Acked-by: Anatoly Burakov <[email protected]> > >>> Reviewed-by: Chenbo Xia <[email protected]> > >> > >> power library maintainer ack/review is missing. > >> > >>> --- > >>> lib/power/rte_power_pmd_mgmt.c | 9 +++++++-- > >>> 1 file changed, 7 insertions(+), 2 deletions(-) > >>> > >>> diff --git a/lib/power/rte_power_pmd_mgmt.c > >> b/lib/power/rte_power_pmd_mgmt.c > >>> index 0ce40f0875..39a2b4cd23 100644 > >>> --- a/lib/power/rte_power_pmd_mgmt.c > >>> +++ b/lib/power/rte_power_pmd_mgmt.c > >>> @@ -382,8 +382,13 @@ queue_stopped(const uint16_t port_id, const > >> uint16_t queue_id) > >>> { > >>> struct rte_eth_rxq_info qinfo; > >>> > >>> - if (rte_eth_rx_queue_info_get(port_id, queue_id, &qinfo) < 0) > >>> - return -1; > >>> + int ret = rte_eth_rx_queue_info_get(port_id, queue_id, &qinfo); > >>> + if (ret < 0) { > >>> + if (ret == -ENOTSUP) > >>> + return 1; > >>> + else > >>> + return -1; > >>> + } > >>> > >>> return qinfo.queue_state == RTE_ETH_QUEUE_STATE_STOPPED; > >>> } > >>> > >

