Prefer the existing apis rather than direct access the configuration
structure.

Fixes: a958a5c07f4b ("net/softnic: support service cores")
Cc: sta...@dpdk.org

Signed-off-by: David Marchand <david.march...@redhat.com>
---
 drivers/net/softnic/rte_eth_softnic_thread.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/drivers/net/softnic/rte_eth_softnic_thread.c 
b/drivers/net/softnic/rte_eth_softnic_thread.c
index 855408e..d610b16 100644
--- a/drivers/net/softnic/rte_eth_softnic_thread.c
+++ b/drivers/net/softnic/rte_eth_softnic_thread.c
@@ -99,17 +99,12 @@
 static inline int
 thread_is_valid(struct pmd_internals *softnic, uint32_t thread_id)
 {
-       struct rte_config *cfg = rte_eal_get_configuration();
-       enum rte_lcore_role_t role;
-
-       if ((thread_id >= RTE_MAX_LCORE) ||
-               (thread_id == cfg->master_lcore))
+       if (thread_id == rte_get_master_lcore())
                return 0; /* FALSE */
 
-       role = cfg->lcore_role[thread_id];
-
-       if ((softnic->params.sc && (role == ROLE_SERVICE)) ||
-               (!softnic->params.sc && (role == ROLE_RTE)))
+       if (softnic->params.sc && rte_lcore_has_role(thread_id, ROLE_SERVICE))
+               return 1; /* TRUE */
+       if (!softnic->params.sc && rte_lcore_has_role(thread_id, ROLE_RTE))
                return 1; /* TRUE */
 
        return 0; /* FALSE */
-- 
1.8.3.1

Reply via email to