Re: Remaining randconfig objtool warnings, linux-next-20200428

From: Arnd Bergmann
Date: Thu Apr 30 2020 - 17:00:04 EST


On Thu, Apr 30, 2020 at 9:46 PM Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
> On Thu, Apr 30, 2020 at 09:33:50AM -0500, Josh Poimboeuf wrote:

>
> So there's an easy fix below, just define an x86-specific SYSCALL_ALIAS.
> It also requries moving the syscall alias macros to syscalls.h, but
> that's probably where they belong anyway.
>
> But the objtool .cold parent alias function detection is a little
> smelly, so I might end up cleaning that up instead if I can figure out a
> good way to do it.
>
> diff --git a/arch/x86/include/asm/syscall_wrapper.h b/arch/x86/include/asm/syscall_wrapper.h
> index a84333adeef2..abe6e633f8dc 100644
> --- a/arch/x86/include/asm/syscall_wrapper.h
> +++ b/arch/x86/include/asm/syscall_wrapper.h
> @@ -79,6 +79,8 @@ extern long __ia32_sys_ni_syscall(const struct pt_regs *regs);
> return __se_##name(__VA_ARGS__); \
> }
>
> +#define SYSCALL_ALIAS(alias, name) __alias(name) typeof(name) alias
> +

Right, this should work in principle, though I suspect it needs to be
changed to include the ABI name for x86, as there are separate
entry points for 32 and 64 bit.

Arnd