bus/dpaa: reduce thread ID syscall usage
authorHemant Agrawal <hemant.agrawal@nxp.com>
Mon, 19 Jul 2021 13:59:13 +0000 (19:29 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 23 Jul 2021 17:42:25 +0000 (19:42 +0200)
Reuse DPDK rte_gettid instead of syscall.
It will help to reduce the dpaa portal allocation time.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
drivers/bus/dpaa/dpaa_bus.c
drivers/bus/fslmc/portal/dpaa2_hw_dpio.c

index 2f48d40..e499305 100644 (file)
@@ -12,7 +12,6 @@
 #include <signal.h>
 #include <pthread.h>
 #include <sys/types.h>
-#include <sys/syscall.h>
 #include <sys/eventfd.h>
 
 #include <rte_byteorder.h>
@@ -314,7 +313,7 @@ int rte_dpaa_portal_init(void *arg)
 
        DPAA_PER_LCORE_PORTAL->qman_idx = qman_get_portal_index();
        DPAA_PER_LCORE_PORTAL->bman_idx = bman_get_portal_index();
-       DPAA_PER_LCORE_PORTAL->tid = syscall(SYS_gettid);
+       DPAA_PER_LCORE_PORTAL->tid = rte_gettid();
 
        ret = pthread_setspecific(dpaa_portal_key,
                                  (void *)DPAA_PER_LCORE_PORTAL);
index c6f8312..c224a88 100644 (file)
@@ -19,7 +19,6 @@
 #include <sys/ioctl.h>
 #include <sys/stat.h>
 #include <sys/mman.h>
-#include <sys/syscall.h>
 #include <sys/epoll.h>
 #include<sys/eventfd.h>
 
@@ -278,8 +277,8 @@ static struct dpaa2_dpio_dev *dpaa2_get_qbman_swp(void)
                return NULL;
        }
 
-       DPAA2_BUS_DEBUG("New Portal %p (%d) affined thread - %lu",
-                       dpio_dev, dpio_dev->index, syscall(SYS_gettid));
+       DPAA2_BUS_DEBUG("New Portal %p (%d) affined thread - %u",
+                       dpio_dev, dpio_dev->index, rte_gettid());
 
        /* Set the Stashing Destination */
        cpu_id = dpaa2_get_core_id();
@@ -310,7 +309,7 @@ int
 dpaa2_affine_qbman_swp(void)
 {
        struct dpaa2_dpio_dev *dpio_dev;
-       uint64_t tid = syscall(SYS_gettid);
+       uint64_t tid = rte_gettid();
 
        /* Populate the dpaa2_io_portal structure */
        if (!RTE_PER_LCORE(_dpaa2_io).dpio_dev) {
@@ -332,7 +331,7 @@ int
 dpaa2_affine_qbman_ethrx_swp(void)
 {
        struct dpaa2_dpio_dev *dpio_dev;
-       uint64_t tid = syscall(SYS_gettid);
+       uint64_t tid = rte_gettid();
 
        /* Populate the dpaa2_io_portal structure */
        if (!RTE_PER_LCORE(_dpaa2_io).ethrx_dpio_dev) {