nuttx/libs/libc/pthread
hujun5 5051721298 sched/pthread: move pthread mutex from syscall to user-space
Move pthread mutex operations from kernel-space syscall
interface to user-space implementations
to reduce syscall overhead. Relocate mutex holder list
tracking from task control block (tcb) to
thread local storage (tls) to improve memory layout and
cache efficiency. Add helper macros for
conditional mutex implementations and update syscall
interface accordingly.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2026-01-22 12:40:49 -03:00
..
CMakeLists.txt sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
Kconfig boardcrtl: change BOARDCTL_TESTSET to BOARDIOC_SPINLOCK 2024-09-06 16:10:09 +08:00
Make.defs sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_atfork.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_destroy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getaffinity.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getdetachstate.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getguardsize.c pthread: add pthread_attr_{get|set}guardsize support 2025-08-22 20:50:13 +08:00
pthread_attr_getinheritsched.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getschedparam.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getschedpolicy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getscope.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getstack.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getstackaddr.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_getstacksize.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_init.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setaffinity.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setdetachstate.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setguardsize.c pthread: add pthread_attr_{get|set}guardsize support 2025-08-22 20:50:13 +08:00
pthread_attr_setinheritsched.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setschedparam.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setschedpolicy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setscope.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setstack.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setstackaddr.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_attr_setstacksize.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_barrierattr_destroy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_barrierattr_getpshared.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_barrierattr_init.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_barrierattr_setpshared.c libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
pthread_barrierdestroy.c pthread_barrier_destroy: Fix return value, if sem_getvalue fails 2025-01-20 23:55:26 +08:00
pthread_barrierinit.c pthread: remove enter_critical_section in pthread_barrier_wait 2024-11-15 14:03:03 +08:00
pthread_barrierwait.c Revert "system: pthread_barrierwait should be moved to kernel space" 2024-11-15 22:07:25 +08:00
pthread_cleanup.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_concurrency.c pthread: add pthread_{get|set}concurrency support 2025-08-22 20:50:13 +08:00
pthread_condattr_destroy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_condattr_getclock.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_condattr_getpshared.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_condattr_init.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_condattr_setclock.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_condattr_setpshared.c libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
pthread_conddestroy.c pthread_conddestroy: Fix return value, if sem_getvalue fails 2025-01-20 23:55:26 +08:00
pthread_condinit.c pthread_cond_broadcast use wait_count for judement 2024-11-14 23:22:52 +08:00
pthread_condtimedwait.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_create.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_equal.c pthead: change the pthread_equal implementation from macro to function 2026-01-16 01:37:38 +08:00
pthread_exit.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_get_stackaddr_np.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_get_stacksize_np.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_getcpuclockid.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_getname_np.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_getspecific.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_gettid_np.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_keycreate.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_keydelete.c libc/pthread/pthread_keydelete.c: reset key value 2025-10-01 12:00:43 +08:00
pthread_kill.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutex.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutex_consistent.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutex_destroy.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutex_getprioceiling.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutex_init.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutex_lock.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutex_setprioceiling.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutex_timedlock.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutex_trylock.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutex_unlock.c sched/pthread: move pthread mutex from syscall to user-space 2026-01-22 12:40:49 -03:00
pthread_mutexattr_destroy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_getprioceiling.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_getprotocol.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_getpshared.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_getrobust.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_gettype.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_init.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_setprioceiling.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_setprotocol.c nuttx/libc: mutex support to set default mode even configured with priority protect 2024-10-12 09:50:54 +08:00
pthread_mutexattr_setpshared.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_setrobust.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_mutexattr_settype.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_once.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlock.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlock_rdlock.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlock_wrlock.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlockattr_destroy.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlockattr_getpshared.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlockattr_init.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_rwlockattr_setpshared.c libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
pthread_self.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_setcancelstate.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
pthread_setcanceltype.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
pthread_setname_np.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_setspecific.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
pthread_spinlock.c Remove duplicate includes across multiple files 2025-01-09 23:30:23 +08:00
pthread_testcancel.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
pthread_yield.c libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00