walnux/sched/pthread
Ville Juven 04e760b1c2 sched/gettid: Move thread ID to TLS
There is no need for a gettid() syscall, as the thread ID is stable through
the life of the process. It is safe to put a copy of TID to TLS. This way
a user processes can access TID quickly via its own stack, instead of
having to use an expensive syscall.

Signed-off-by: Ville Juven <ville.juven@unikie.com>
2025-04-08 22:53:10 +08:00
..
CMakeLists.txt pthread: remove enter_critical_section in pthread_mutex 2025-01-12 22:30:35 +08:00
Make.defs pthread: remove enter_critical_section in pthread_mutex 2025-01-12 22:30:35 +08:00
pthread.h sched/mutex: add ticked lock version for mutex/rmutex 2025-04-03 20:13:55 +08:00
pthread_cancel.c pthread_cleanup: move clenup down to tls 2024-09-14 20:15:12 +08:00
pthread_completejoin.c group: use tg_mutex to replace tg_joinlock 2025-01-19 17:08:32 +08:00
pthread_condbroadcast.c pthread_cond_wait: Use atomic_t to protect the waiter count 2025-01-20 23:55:26 +08:00
pthread_condclockwait.c pthread_cond_wait: Use atomic_t to protect the waiter count 2025-01-20 23:55:26 +08:00
pthread_condsignal.c pthread_cond_wait: Use atomic_t to protect the waiter count 2025-01-20 23:55:26 +08:00
pthread_condwait.c pthread_cond_wait: Use atomic_t to protect the waiter count 2025-01-20 23:55:26 +08:00
pthread_create.c sched/gettid: Move thread ID to TLS 2025-04-08 22:53:10 +08:00
pthread_detach.c group: use tg_mutex to replace tg_joinlock 2025-01-19 17:08:32 +08:00
pthread_exit.c sched: replace sync pause with async pause for nxtask_terminate 2024-10-06 09:26:56 +08:00
pthread_findjoininfo.c group: use tg_mutex to replace tg_joinlock 2025-01-19 17:08:32 +08:00
pthread_getaffinity.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
pthread_getschedparam.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
pthread_join.c group: use tg_mutex to replace tg_joinlock 2025-01-19 17:08:32 +08:00
pthread_mutex.c pthread: remove enter_critical_section in pthread_mutex 2025-01-12 22:30:35 +08:00
pthread_mutexconsistent.c sched/pthread: There is no need to use sched_[un]lock 2024-10-12 13:28:23 +08:00
pthread_mutexdestroy.c sched/pthread: There is no need to use sched_[un]lock 2024-10-12 13:28:23 +08:00
pthread_mutexinit.c sched/pthread: Set the protocol of underlying semaphore to SEM_TYPE_MUTEX in pthread_mutex_init 2025-04-07 16:29:57 +08:00
pthread_mutextimedlock.c pthread_mutx: remove unused critical_secton lock 2024-09-15 17:32:33 +08:00
pthread_mutextrylock.c sched/pthread: There is no need to use sched_[un]lock 2024-10-12 13:28:23 +08:00
pthread_mutexunlock.c pthread_mutx: remove unused critical_secton lock 2024-09-15 17:32:33 +08:00
pthread_release.c group: use tg_mutex to replace tg_joinlock 2025-01-19 17:08:32 +08:00
pthread_setaffinity.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
pthread_setschedparam.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
pthread_setschedprio.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
pthread_sigmask.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00