eal/windows: support thread ID query
authorTasnim Bashar <tbashar@mellanox.com>
Thu, 21 May 2020 00:32:53 +0000 (17:32 -0700)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 11 Jun 2020 14:40:29 +0000 (16:40 +0200)
Add rte_sys_gettid function to use rte_gettid() on Windows.
rte_gettid() is required for recursive spin lock and recursive ticket lock.

Signed-off-by: Tasnim Bashar <tbashar@mellanox.com>
Acked-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
lib/librte_eal/windows/eal_thread.c

index e149199..4c1e31c 100644 (file)
@@ -64,12 +64,6 @@ eal_thread_init_master(unsigned int lcore_id)
        RTE_PER_LCORE(_lcore_id) = lcore_id;
 }
 
-static inline pthread_t
-eal_thread_self(void)
-{
-       return GetCurrentThreadId();
-}
-
 /* main loop of threads */
 void *
 eal_thread_loop(void *arg __rte_unused)
@@ -81,7 +75,7 @@ eal_thread_loop(void *arg __rte_unused)
        int m2s, s2m;
        char cpuset[RTE_CPU_AFFINITY_STR_LEN];
 
-       thread_id = eal_thread_self();
+       thread_id = pthread_self();
 
        /* retrieve our lcore_id from the configuration structure */
        RTE_LCORE_FOREACH_SLAVE(lcore_id) {
@@ -157,6 +151,13 @@ eal_thread_create(pthread_t *thread)
        return 0;
 }
 
+/* get current thread ID */
+int
+rte_sys_gettid(void)
+{
+       return GetCurrentThreadId();
+}
+
 int
 rte_thread_setname(__rte_unused pthread_t id, __rte_unused const char *name)
 {