[PATCH 0/3] Introduce arch_do_panic
Mete Durlu <[email protected]> Mon, 27 Jul 2026 10:58:47 +0200
| Newsgroups | org.kernel.vger.sparclinux,org.kernel.vger.linux-kernel,org.kernel.vger.linux-s390 |
|---|---|
| Message-ID | <[email protected]> |
Replace architecture-specific ifdef sections in vpanic() with a clean arch_do_panic() hook. Currently s390 and sparc embed their panic handlers directly in vpanic() using preprocessor conditionals, making the common code path harder to maintain. Introduce arch_do_panic() as an architecture extension point called at the end of vpanic(). Architectures can use this hook to implement their specific panic handling without polluting the generic panic code. Move s390 panic handling from the panic_notifier chain to arch_do_panic(). This corrects the execution order so that the panic_timeout is properly evaluated before architecture-specific actions. The previous notifier-based approach executed too early in the panic sequence. Move sparc panic handling from ifdef blocks to arch_do_panic(). Remove the preprocessor conditionals from vpanic() and place the Stop-A enablement code in architecture-specific files where it belongs. The cleanup reduces vpanic() complexity and establishes a pattern for other architectures needing custom panic behavior. Signed-off-by: Mete Durlu <[email protected]> --- Mete Durlu (3): panic: Introduce arch_do_panic s390: Implement arch_do_panic sparc: Implement arch_do_panic arch/s390/include/asm/ipl.h | 1 + arch/s390/include/asm/setup.h | 3 +++ arch/s390/kernel/ipl.c | 15 +-------------- arch/sparc/include/asm/setup.h | 4 +++- arch/sparc/kernel/setup.c | 8 ++++++++ kernel/panic.c | 18 ++++++------------ 6 files changed, 22 insertions(+), 27 deletions(-) --- base-commit: 48a5a7ab8d6ab7090564339e039c421f315de912 change-id: 20260724-arch_do_panic-a97f699aa332 Best regards, -- Mete Durlu <[email protected]>