rt-thread-official/libcpu/aarch64
Shell 5796e0d646 feat: arm64: update thread self on sp-switch
This patch improves the atomicity of context switching by ensuring that
the stack pointer (sp) and thread self updates occur simultaneously.
This enhancement is crucial for maintaining thread safety and
preventing potential inconsistencies during context switches.

Changes:
- Modified `cpuport.h` to use `ARM64_THREAD_REG` for thread self access.
- Added an `update_tidr` macro in `context_gcc.S` to streamline thread ID
  updates.
- Adjusted `rt_hw_context_switch_to` and `rt_hw_context_switch` to call
  `update_tidr`, ensuring atomic updates during context switches.
- Cleaned up `scheduler_mp.c` by removing redundant thread self
  assignments.

Signed-off-by: Shell <smokewood@qq.com>
2024-10-11 00:09:01 -04:00
..
common feat: arm64: update thread self on sp-switch 2024-10-11 00:09:01 -04:00
cortex-a [lwp][vdso] Add VDSO functionality under the aarch64 architecture (#9176) 2024-07-15 17:58:29 +08:00
.gitignore AArch64: support public linker scripts (#7831) 2023-07-25 21:31:44 +08:00
SConscript [smart] fixup of lwp recycling and mm varea (#8206) 2023-11-02 20:23:11 +08:00
link.lds.S [BSP][Phytium] add support for mainbranch cherryusb (xhci host + pusb2 device/host) 2024-08-27 22:06:13 -04:00