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.

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;
   }



Reply via email to