On 04/12/2025 09:21, Jinjie Ruan wrote:
Currently, x86, Riscv, Loongarch use the generic entry which makes maintainers' work easier and codes more elegant. arm64 has already switched to the generic IRQ entry, so completely convert arm64 to use the generic entry infrastructure from kernel/entry/*.
The changes are below:
Remove TIF_SYSCALL_* flag.
Remove _TIF_SYSCALL_WORK and has_syscall_work(), as _TIF_SYSCALL_WORK is equal with SYSCALL_WORK_ENTER.
Should be updated considering patch 7 (has_syscall_work() no longer exists and there is also _TIF_SYSCALL_EXIT_WORK).
Implement arch_ptrace_report_syscall_entry/exit() with report_syscall_entry/exit() to do arm64-specific save/restore during syscall entry/exit.
Add "ARCH_SYSCALL_WORK_EXIT" to be defined as "_TIF_SECCOMP | _TIF_SYSCALL_EMU" to keep the arm64 behaviour unchanged.
No longer the case.
- Remove arm64 syscall_trace_enter(), syscall_exit_to_user_mode_prepare(), and related sub-functions including syscall_exit_work() and syscall_enter_audit(), by calling generic entry's functions with similar functionality.
Would be good to talk about SYSCALL_EXIT_TRAP as well.
Otherwise:
Reviewed-by: Kevin Brodsky kevin.brodsky@arm.com
- Implement arch_syscall_is_vdso_sigreturn() to support "Syscall User Dispatch".
Suggested-by: Kevin Brodsky kevin.brodsky@arm.com Suggested-by: Mark Rutland mark.rutland@arm.com Signed-off-by: Jinjie Ruan ruanjinjie@huawei.com
[...]