diff options
author | Rich Felker <dalias@aerifal.cx> | 2020-08-17 20:12:53 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2020-08-17 20:12:53 -0400 |
commit | d49cf07541bb54a5ac7aec1feec8514db33db8ea (patch) | |
tree | 2ac42a1da8400e3817f233748e7abf0ddb337988 /include/unistd.h | |
parent | 22359b54ab9a3ff0a854490f3eb0fcb838e785af (diff) | |
download | musl-d49cf07541bb54a5ac7aec1feec8514db33db8ea.zip musl-d49cf07541bb54a5ac7aec1feec8514db33db8ea.tar.gz musl-d49cf07541bb54a5ac7aec1feec8514db33db8ea.tar.bz2 |
add gettid function
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.
Diffstat (limited to 'include/unistd.h')
-rw-r--r-- | include/unistd.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/unistd.h b/include/unistd.h index 7bcbff9..07584a2 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -190,6 +190,7 @@ int syncfs(int); int euidaccess(const char *, int); int eaccess(const char *, int); ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned); +pid_t gettid(void); #endif #if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) |