nuttx/sched/sched
hujun5 b52ad53cc1 sched: replace sync pause with async pause for nxsched_suspend
reason:
In the kernel, we are planning to remove all occurrences of up_cpu_pause as one of the steps to
simplify the implementation of critical sections. The goal is to enable spin_lock_irqsave to encapsulate critical sections,
thereby facilitating the replacement of critical sections(big lock) with smaller spin_lock_irqsave(small lock)

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

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-10-17 12:51:14 +02:00
..
CMakeLists.txt arch: remove up_cpu_pause up_cpu_resume up_cpu_paused up_cpu_pausereq 2024-10-11 01:30:51 +08:00
Make.defs arch: remove up_cpu_pause up_cpu_resume up_cpu_paused up_cpu_pausereq 2024-10-11 01:30:51 +08:00
queue.h sched: change the SMP scheduling policy from synchronous to asynchronous 2024-10-09 23:32:31 +08:00
sched_addblocked.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_addprioritized.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_addreadytorun.c arch: rename xxxx_pause.c to xxxx_smpcall.c 2024-10-11 01:30:51 +08:00
sched_backtrace.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_cpuload_oneshot.c usleep: use div_const to optimize the usleep 2024-09-12 18:14:39 +08:00
sched_cpuload_period.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_cpuload.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_cpuselect.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_critmonitor.c critmon: fix context switch critmon pause err. 2024-09-19 03:16:14 +08:00
sched_dumponexit.c sched: move DUMP_ON_EXIT to sched 2024-09-19 03:49:12 +08:00
sched_foreach.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_get_stackinfo.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_get_stateinfo.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_get_tls.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_getaffinity.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_getcpu.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_getfiles.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_getparam.c clock: Replace all ts and tick conversion functions 2024-09-12 18:14:39 +08:00
sched_getscheduler.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_gettcb.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_idletask.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_lock.c sched: change nxsched_islocked_global to nxsched_islocked_tcb 2024-10-10 17:57:30 +08:00
sched_lockcount.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_mergepending.c sched: change nxsched_islocked_global to nxsched_islocked_tcb 2024-10-10 17:57:30 +08:00
sched_mergeprioritized.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_process_delivered.c arch: remove up_cpu_pause up_cpu_resume up_cpu_paused up_cpu_pausereq 2024-10-11 01:30:51 +08:00
sched_processtimer.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_releasetcb.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_removeblocked.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_removereadytorun.c arch: remove up_cpu_pause up_cpu_resume up_cpu_paused up_cpu_pausereq 2024-10-11 01:30:51 +08:00
sched_reprioritize.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_reprioritizertr.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_resumescheduler.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_roundrobin.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_rrgetinterval.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_self.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_setaffinity.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_setparam.c clock: Replace all ts and tick conversion functions 2024-09-12 18:14:39 +08:00
sched_setpriority.c sched: replace sync pause with async pause for setpriority 2024-10-17 12:51:14 +02:00
sched_setscheduler.c clock: Replace all ts and tick conversion functions 2024-09-12 18:14:39 +08:00
sched_smp.c arch: remove up_cpu_pause up_cpu_resume up_cpu_paused up_cpu_pausereq 2024-10-11 01:30:51 +08:00
sched_sporadic.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_suspend.c sched: replace sync pause with async pause for nxsched_suspend 2024-10-17 12:51:14 +02:00
sched_suspendscheduler.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_sysinfo.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_timerexpiration.c clock: Replace all ts and tick conversion functions 2024-09-12 18:14:39 +08:00
sched_unlock.c sched: change nxsched_islocked_global to nxsched_islocked_tcb 2024-10-10 17:57:30 +08:00
sched_verifytcb.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_wait.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_waitid.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_waitpid.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched_yield.c sched: migrate to SPDX identifier 2024-09-12 01:10:14 +08:00
sched.h arch: remove up_cpu_pause up_cpu_resume up_cpu_paused up_cpu_pausereq 2024-10-11 01:30:51 +08:00