Subject: Re: linux-next 20201126 - build error on arm allmodconfig

From: Russell King - ARM Linux admin <[email-masked]>
Date: Thu, 26 Nov 2020 14:14:29 +0000

On Thu, Nov 26, 2020 at 08:25:02AM -0500, Valdis Klētnieks wrote:
> Seems something is giving it indigestion regarding asmlinkage...
> 
>   CC      arch/arm/mm/kasan_init.o
> In file included from ./include/linux/kasan.h:15,
>                  from arch/arm/mm/kasan_init.c:11:
> ./arch/arm/include/asm/kasan.h:26:11: error: expected ';' before 'void'
>  asmlinkage void kasan_early_init(void);
>            ^~~~~
>            ;
> make[2]: *** [scripts/Makefile.build:283: arch/arm/mm/kasan_init.o] Error 1
> make[1]: *** [scripts/Makefile.build:500: arch/arm/mm] Error 2
> make: *** [Makefile:1803: arch/arm] Error 2
> 
> Git bisect points at:
> 
> commit 2df573d2ca4c1ce6ea33cb7849222f771e759211
> Author: Andrey Konovalov <[email-masked]>
> Date:   Tue Nov 24 16:45:08 2020 +1100
> 
>     kasan: shadow declarations only for software modes
> 
> Looks like it's this chunk:
> 
> diff --git a/include/linux/kasan.h b/include/linux/kasan.h
> index 59538e795df4..26f2ab92e7ca 100644
> --- a/include/linux/kasan.h
> +++ b/include/linux/kasan.h
> @@ -11,7 +11,6 @@ struct task_struct;
> 
>  #ifdef CONFIG_KASAN
> 
> -#include <linux/pgtable.h>
>  #include <asm/kasan.h>
> 
> Testing shows putting that #include back in makes it compile correctly,
> but it's not obvious why putting that back makes 'asmlinkage' recognized.
> 
> "You are in a twisty little maze of #includes, all different"... :)

The real answer is for asm/kasan.h to include linux/linkage.h

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!

_______________________________________________
linux-arm-kernel mailing list
[email-masked]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel