On 5/26/2022 11:21 AM, Thomas Monjalon wrote:
[CAUTION: External Email]

25/05/2022 19:44, Ferruh Yigit:
On 5/3/2022 11:02 AM, Min Hu (Connor) wrote:
Currently, 'dev_started' is always set to be 0 when dev stop, whether
it succeeded or failed. This is unreasonable and this patch fixed it.

Fixes: 62024eb82756 ("ethdev: change stop operation callback to return int")
Cc: sta...@dpdk.org

Signed-off-by: Min Hu (Connor) <humi...@huawei.com>
---
   lib/ethdev/rte_ethdev.c | 3 ++-
   1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
index 29a3d80466..e0011372aa 100644
--- a/lib/ethdev/rte_ethdev.c
+++ b/lib/ethdev/rte_ethdev.c
@@ -1533,8 +1533,9 @@ rte_eth_dev_stop(uint16_t port_id)
     /* point fast-path functions to dummy ones */
     eth_dev_fp_ops_reset(rte_eth_fp_ops + port_id);

-   dev->data->dev_started = 0;
     ret = (*dev->dev_ops->dev_stop)(dev);
+   if (ret == 0)
+           dev->data->dev_started = 0;
     rte_ethdev_trace_stop(port_id, ret);

     return ret;

Change looks good to me, I checked for possible unexpected side effect
but I did not see any.

@Andrew, @Thomas, if you also don't see/remember any issue related
change, I will push it soon.

Acked-by: Thomas Monjalon <tho...@monjalon.net>


Acked-by: Ferruh Yigit <ferruh.yi...@xilinx.com>

Applied to dpdk-next-net/main, thanks.

Reply via email to