mirror of https://git.musl-libc.org/git/musl
Browse Source
this is a prerequisite for addition of other interfaces that use kernel tids, including futex and SIGEV_THREAD_ID. there is some ambiguity as to whether the semantic return type should be int or pid_t. either way, futex API imposes a contract that the values fit in int (excluding some upper reserved bits). glibc used pid_t, so in the interest of not having gratuitous mismatch (the underlying types are the same anyway), pid_t is used here as well. while conceptually this is a syscall, the copy stored in the thread structure is always valid in all contexts where it's valid to call libc functions, so it's used to avoid the syscall.master
2 changed files with 9 additions and 0 deletions
@ -0,0 +1,8 @@ |
|||||
|
#define _GNU_SOURCE |
||||
|
#include <unistd.h> |
||||
|
#include "pthread_impl.h" |
||||
|
|
||||
|
pid_t gettid(void) |
||||
|
{ |
||||
|
return __pthread_self()->tid; |
||||
|
} |
||||
Loading…
Reference in new issue