Re: [PATCH v4 3/5] x86/syscall: Mark exit[_group] syscall handlers __noreturn

From: Josh Poimboeuf
Date: Fri May 03 2024 - 19:48:47 EST


On Fri, May 03, 2024 at 04:33:00PM -0700, Paul E. McKenney wrote:
> Does arch/x86/entry/syscall_32.c need the following additional patch?
>
> A quick smoke test passes, but perhaps I am just getting lucky...
>
> Thanx, Paul
>
> ------------------------------------------------------------------------
>
> diff --git a/arch/x86/entry/syscall_32.c b/arch/x86/entry/syscall_32.c
> index aab31760b4e3e..d9ae910ea6f33 100644
> --- a/arch/x86/entry/syscall_32.c
> +++ b/arch/x86/entry/syscall_32.c
> @@ -14,9 +14,13 @@
> #endif
>
> #define __SYSCALL(nr, sym) extern long __ia32_##sym(const struct pt_regs *);
> +#define __SYSCALL_NORETURN(nr, sym) extern long __noreturn __ia32_##sym(const struct pt_regs *);
> #include <asm/syscalls_32.h>
> #undef __SYSCALL
>
> +#undef __SYSCALL_NORETURN
> +#define __SYSCALL_NORETURN __SYSCALL
> +
> #define __SYSCALL(nr, sym) __ia32_##sym,
> const sys_call_ptr_t ia32_sys_call_table[] = {
> #include <asm/syscalls_32.h>

Ah, yeah, that looks right.

--
Josh