nuttx/sched/semaphore
hujun5 1c5a0bf6cc irq: add [enter|leave]_critical_section_nonirq
Configuring NuttX and compile:
$ ./tools/configure.sh -l qemu-armv8a:nsh_smp
$ make
Running with qemu
$ qemu-system-aarch64 -cpu cortex-a53 -smp 4 -nographic \
   -machine virt,virtualization=on,gic-version=3 \
   -net none -chardev stdio,id=con,mux=on -serial chardev:con \
   -mon chardev=con,mode=readline -kernel ./nuttx

reason:
In some non-irq scenarios, we can simplify
the implementation of critical sections to improve performance.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-09-08 17:50:51 +08:00
..
CMakeLists.txt spin_lock: inline spin_lock 2024-07-15 02:29:30 +08:00
Make.defs spin_lock: inline spin_lock 2024-07-15 02:29:30 +08:00
sem_clockwait.c irq: add [enter|leave]_critical_section_nonirq 2024-09-08 17:50:51 +08:00
sem_destroy.c sched/semaphore: Move cancel point and errno handling to libc / user-space 2023-11-27 04:52:54 -08:00
sem_holder.c sched/sem_holder.c: When accessing SEM_WAITLIST, use holder's addrenv 2023-11-15 03:45:15 -08:00
sem_initialize.c add the startup process tracepoint 2023-08-19 21:50:08 +08:00
sem_post.c sched/semaphore: Move cancel point and errno handling to libc / user-space 2023-11-27 04:52:54 -08:00
sem_recover.c sem: don't clear waitobj when do sem recover 2022-10-11 16:31:54 +09:00
sem_reset.c sched: Author Gregory Nutt: update licenses to Apache 2021-02-09 01:21:53 -08:00
sem_rw.c shced:sem: replace mutex with spinlock 2024-03-19 18:06:12 +08:00
sem_setprotocol.c sched/semaphore: Move cancel point and errno handling to libc / user-space 2023-11-27 04:52:54 -08:00
sem_tickwait.c irq: add [enter|leave]_critical_section_nonirq 2024-09-08 17:50:51 +08:00
sem_timedwait.c sched/semaphore: Move cancel point and errno handling to libc / user-space 2023-11-27 04:52:54 -08:00
sem_timeout.c sched: Author Gregory Nutt: update licenses to Apache 2021-02-09 01:21:53 -08:00
sem_trywait.c sched/semaphore: Move cancel point and errno handling to libc / user-space 2023-11-27 04:52:54 -08:00
sem_wait.c irq: add [enter|leave]_critical_section_nonirq 2024-09-08 17:50:51 +08:00
sem_waitirq.c sched/addrenv.c: Implement re-entrancy for addrenv_select() 2023-04-25 14:33:19 +02:00
semaphore.h Revert "Assert if a thread attempts to post a semaphore incorrectly." 2023-04-11 17:01:14 +09:00