[compiler-rt] r351607 - [safestack] Add ThreadId type as uint64_t

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 18 14:32:29 PST 2019


Author: vitalybuka
Date: Fri Jan 18 14:32:29 2019
New Revision: 351607

URL: http://llvm.org/viewvc/llvm-project?rev=351607&view=rev
Log:
[safestack] Add ThreadId type as uint64_t

Reviewers: krytarowski, eugenis

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D56937

Modified:
    compiler-rt/trunk/lib/safestack/safestack.cc
    compiler-rt/trunk/lib/safestack/safestack_platform.h

Modified: compiler-rt/trunk/lib/safestack/safestack.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/safestack/safestack.cc?rev=351607&r1=351606&r2=351607&view=diff
==============================================================================
--- compiler-rt/trunk/lib/safestack/safestack.cc (original)
+++ compiler-rt/trunk/lib/safestack/safestack.cc Fri Jan 18 14:32:29 2019
@@ -151,7 +151,7 @@ struct thread_stack_ll {
   void *stack_base;
   size_t size;
   pid_t pid;
-  pid_t tid;
+  ThreadId tid;
 };
 
 /// Linked list of unsafe stacks for threads that are exiting. We delay
@@ -174,7 +174,7 @@ void thread_cleanup_handler(void *_iter)
   pthread_mutex_unlock(&thread_stacks_mutex);
 
   pid_t pid = getpid();
-  pid_t tid = GetTid();
+  ThreadId tid = GetTid();
 
   // Free stacks for dead threads
   thread_stack_ll **stackp = &temp_stacks;

Modified: compiler-rt/trunk/lib/safestack/safestack_platform.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/safestack/safestack_platform.h?rev=351607&r1=351606&r2=351607&view=diff
==============================================================================
--- compiler-rt/trunk/lib/safestack/safestack_platform.h (original)
+++ compiler-rt/trunk/lib/safestack/safestack_platform.h Fri Jan 18 14:32:29 2019
@@ -16,13 +16,20 @@
 
 #include "sanitizer_common/sanitizer_platform.h"
 
+#include <stdint.h>
 #include <sys/syscall.h>
 #include <sys/types.h>
 #include <unistd.h>
 
+#if SANITIZER_NETBSD
+#include <lwp.h>
+#endif
+
 namespace safestack {
 
-inline pid_t GetTid() {
+using ThreadId = uint64_t;
+
+inline ThreadId GetTid() {
 #if SANITIZER_NETBSD
   return _lwp_self();
 #elif SANITIZER_FREEBSD
@@ -38,7 +45,7 @@ inline pid_t GetTid() {
 #endif
 }
 
-inline int TgKill(pid_t pid, pid_t tid, int sig) {
+inline int TgKill(pid_t pid, ThreadId tid, int sig) {
 #if SANITIZER_NETBSD
   (void)pid;
   return _lwp_kill(tid, sig);




More information about the llvm-commits mailing list