Re: [PATCH] x86/acpi: make "asmlinkage" part first thing in the function definition

From: Peter Zijlstra
Date: Wed Mar 04 2020 - 05:04:45 EST


On Wed, Mar 04, 2020 at 12:54:09AM -0800, hpa@xxxxxxxxx wrote:
> On March 3, 2020 12:41:44 PM PST, Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
> >g++ insists that function declaration must start with extern "C"
> >(which asmlinkage expands to).
> >
> >gcc doesn't care.
> >
> >Signed-off-by: _Z6Alexeyv <adobriyan@xxxxxxxxx>
> >---
> >
> > arch/x86/kernel/acpi/sleep.c | 2 +-
> > arch/x86/kernel/acpi/sleep.h | 2 +-
> > 2 files changed, 2 insertions(+), 2 deletions(-)
> >
> >--- a/arch/x86/kernel/acpi/sleep.c
> >+++ b/arch/x86/kernel/acpi/sleep.c
> >@@ -43,7 +43,7 @@ unsigned long acpi_get_wakeup_address(void)
> > *
> > * Wrapper around acpi_enter_sleep_state() to be called by assmebly.
> > */
> >-acpi_status asmlinkage __visible x86_acpi_enter_sleep_state(u8 state)
> >+asmlinkage acpi_status __visible x86_acpi_enter_sleep_state(u8 state)
> > {
> > return acpi_enter_sleep_state(state);
> > }
> >--- a/arch/x86/kernel/acpi/sleep.h
> >+++ b/arch/x86/kernel/acpi/sleep.h
> >@@ -19,4 +19,4 @@ extern void do_suspend_lowlevel(void);
> >
> > extern int x86_acpi_suspend_lowlevel(void);
> >
> >-acpi_status asmlinkage x86_acpi_enter_sleep_state(u8 state);
> >+asmlinkage acpi_status x86_acpi_enter_sleep_state(u8 state);
>
> Are you building the kernel with C++?!

He is :-) IIRC he's got a whole bunch of patches that removes all the
C++ keywords from the kernel.