mirror of
https://github.com/apache/nuttx.git
synced 2026-08-03 21:29:02 +00:00
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>
18 KiB
18 KiB
| 1 | _assert | assert.h | void | FAR const char * | int | FAR const char * | FAR void * | |
|---|---|---|---|---|---|---|---|---|
| 2 | accept4 | sys/socket.h | defined(CONFIG_NET) | int | int | FAR struct sockaddr * | FAR socklen_t * | int |
| 3 | clock_nanosleep | time.h | int | clockid_t | int | FAR const struct timespec * | FAR struct timespec * | |
| 4 | epoll_ctl | sys/epoll.h | int | int | int | int | FAR struct epoll_event * | |
| 5 | epoll_wait | sys/epoll.h | int | int | FAR struct epoll_event * | int | int | |
| 6 | fcntl | fcntl.h | int | int | int | ... | int | |
| 7 | ioctl | sys/ioctl.h | int | int | int | ... | unsigned long | |
| 8 | mq_receive | mqueue.h | !defined(CONFIG_DISABLE_MQUEUE) | ssize_t | mqd_t | FAR char * | size_t | FAR unsigned int * |
| 9 | mq_send | mqueue.h | !defined(CONFIG_DISABLE_MQUEUE) | int | mqd_t | FAR const char * | size_t | unsigned int |
| 10 | open | fcntl.h | int | FAR const char * | int | ... | mode_t | |
| 11 | ppoll | poll.h | !defined(CONFIG_DISABLE_ALL_SIGNALS) | int | FAR struct pollfd * | nfds_t | FAR const struct timespec * | FAR const sigset_t * |
| 12 | prctl | sys/prctl.h | int | int | ... | uintptr_t | uintptr_t | |
| 13 | pread | unistd.h | ssize_t | int | FAR void * | size_t | off_t | |
| 14 | pthread_cond_clockwait | pthread.h | !defined(CONFIG_DISABLE_PTHREAD) | int | FAR pthread_cond_t * | FAR pthread_mutex_t * | clockid_t | FAR const struct timespec * |
| 15 | pwrite | unistd.h | ssize_t | int | FAR const void * | size_t | off_t | |
| 16 | recv | sys/socket.h | defined(CONFIG_NET) | ssize_t | int | FAR void * | size_t | int |
| 17 | sched_backtrace | sched.h | defined(CONFIG_SCHED_BACKTRACE) | int | pid_t | FAR void ** | int | int |
| 18 | send | sys/socket.h | defined(CONFIG_NET) | ssize_t | int | FAR const void * | size_t | int |
| 19 | sendfile | sys/sendfile.h | ssize_t | int | int | FAR off_t * | size_t | |
| 20 | socketpair | sys/socket.h | defined(CONFIG_NET) | int | int | int | int | int [2]|FAR int * |
| 21 | timer_settime | time.h | !defined(CONFIG_DISABLE_POSIX_TIMERS) | int | timer_t | int | FAR const struct itimerspec * | FAR struct itimerspec * |
| 22 | timerfd_settime | sys/timerfd.h | defined(CONFIG_TIMER_FD) | int | int | int | FAR const struct itimerspec * | FAR struct itimerspec * |
| 23 | waitid | sys/wait.h | defined(CONFIG_SCHED_WAITPID) && defined(CONFIG_SCHED_HAVE_PARENT) | int | idtype_t | id_t | FAR siginfo_t * | int |