Re: [PATCH v18 00/14] arm64: entry: Convert to Generic Entry

From: Jinjie Ruan

Date: Tue Sep 15 2026 - 10:11:17 EST




在 2026/9/2 17:55, Jinjie Ruan 写道:
> This series converts arm64 to the generic entry infrastructure.
>
> Currently, architectures such as x86, RISC-V, LoongArch, Powerprc
> and S390 use generic entry, which significantly reduces maintenance
> burden and improves code elegance. arm64 already adopted generic IRQ
> entry in commit b3cf07851b6c ("arm64: entry: Switch to generic IRQ entry"),
> making it the right time to complete the conversion.
>
> This work brings arm64 in line with other major architectures,
> reducing duplicated code and enabling future improvements like
> Syscall User Dispatch and rseq time slice extension optimizations.
>
> The series is rebased on v7.3-rc1 and has been tested on Kunpeng HIP09
> with stress-ng, hackbench, kselftests (ptrace, breakpoints, arm64/abi,
> arm64/fp, vDSO), ptrace stress test, and Pseudo-NMI load test.
>
> Changes in v18:
> - Rebased on v7.3-rc1.
> - Drop the SUD patch as Mark suggeted.
> - Update the commit message.
> - Add Reviewed-by.
> - Link to v17: https://lore.kernel.org/all/20260721081858.1169276-1-ruanjinjie@xxxxxxxxxx/

Hi Mark,

Thanks for your continuous and detailed guidance through the previous
iterations of this series.

Please let me know if there are any further review comments or code
modifications required from my side, or if this looks good to be queued
for the upcoming 7.4 cycle?

Thanks,
Jinjie

>
> For changes in v7 to v16, please refer to the individual patch threads:
> - v16: https://lore.kernel.org/all/20260629130616.642022-1-ruanjinjie@xxxxxxxxxx/
> - v15: https://lore.kernel.org/all/20260511092103.1974980-1-ruanjinjie@xxxxxxxxxx/
> - v14: https://lore.kernel.org/all/20260320102620.1336796-1-ruanjinjie@xxxxxxxxxx/
> - v13: https://lore.kernel.org/all/20260317082020.737779-1-ruanjinjie@xxxxxxxxxx/
> - v12: https://lore.kernel.org/all/20260203133728.848283-1-ruanjinjie@xxxxxxxxxx/
> - v11: https://lore.kernel.org/all/20260128031934.3906955-1-ruanjinjie@xxxxxxxxxx/
> - v10: https://lore.kernel.org/all/20251222114737.1334364-1-ruanjinjie@xxxxxxxxxx/
> - v9: https://lore.kernel.org/all/20251204082123.2792067-1-ruanjinjie@xxxxxxxxxx/
> - v8: https://lore.kernel.org/all/20251126071446.3234218-1-ruanjinjie@xxxxxxxxxx/
> - v7: https://lore.kernel.org/all/20251117133048.53182-1-ruanjinjie@xxxxxxxxxx/
>
> Jinjie Ruan (14):
> arm64: ptrace: Fix redundant syscall exit stop for
> PTRACE_SYSEMU_SINGLESTEP
> arm64: ptrace: Rework audit_syscall_entry()
> arm64: ptrace: Open-code seccomp check in syscall_trace_enter()
> arm64: ptrace: Rename and clean up syscall_trace_enter()
> arm64: ptrace: Protect rseq_syscall() from tracer PC modifications
> arm64: syscall: Rework the syscall exit path in el0_svc_common()
> arm64: ptrace: Pass thread flags to trace enter/exit
> arm64: ptrace: Extract arm64_syscall_exit_to_user_mode_work() helper
> arm64: ptrace: Align syscall exit work semantics with generic entry
> arm64: syscall: Use exit-specific flags check in el0_svc_common()
> arm64: syscall: Simplify el0_svc_common() syscall exit path
> arm64: ptrace: Make return type of arm64_syscall_trace_enter() bool
> arm64: entry: Convert to generic entry
> arm64: Inline el0_svc_common()
>
> arch/arm64/Kconfig | 2 +-
> arch/arm64/include/asm/entry-common.h | 77 +++++++++++++++++
> arch/arm64/include/asm/syscall.h | 5 +-
> arch/arm64/include/asm/thread_info.h | 16 +---
> arch/arm64/kernel/debug-monitors.c | 8 ++
> arch/arm64/kernel/entry-common.c | 2 +-
> arch/arm64/kernel/ptrace.c | 115 --------------------------
> arch/arm64/kernel/signal.c | 2 +-
> arch/arm64/kernel/syscall.c | 34 +++-----
> 9 files changed, 102 insertions(+), 159 deletions(-)
>