[PATCH] ethdev: fix push new event
Min Hu (Connor)
humin29 at huawei.com
Sat May 21 08:55:48 CEST 2022
From: Huisong Li <lihuisong at huawei.com>
The 'state' in struct rte_eth_dev may be used to update some information
when app receive these events. For example, when app receives a new event,
app may get the socket id of this port by calling rte_eth_dev_socket_id to
setup the attached port. The 'state' is used in rte_eth_dev_socket_id.
If the state isn't modified to RTE_ETH_DEV_ATTACHED before pushing the new
event, app will get the socket id failed. So this patch moves pushing event
operation after the state updated.
Fixes: 99a2dd955fba ("lib: remove librte_ prefix from directory names")
Cc: stable at dpdk.org
Signed-off-by: Huisong Li <lihuisong at huawei.com>
Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
---
lib/ethdev/rte_ethdev.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
index cea2f0b498..f555647c7a 100644
--- a/lib/ethdev/rte_ethdev.c
+++ b/lib/ethdev/rte_ethdev.c
@@ -4816,9 +4816,8 @@ rte_eth_dev_probing_finish(struct rte_eth_dev *dev)
if (rte_eal_process_type() == RTE_PROC_SECONDARY)
eth_dev_fp_ops_setup(rte_eth_fp_ops + dev->data->port_id, dev);
- rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_NEW, NULL);
-
dev->state = RTE_ETH_DEV_ATTACHED;
+ rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_NEW, NULL);
}
int
--
2.33.0
More information about the stable
mailing list