Subject: Re: linux-next: build failure after merge of the origin tree

From: Stephen Rothwell <[email-masked]>
Date: Wed, 8 Sep 2021 09:09:07 +1000

Hi all,

On Wed, 8 Sep 2021 09:07:20 +1000 Stephen Rothwell <[email-masked]> wrote:
>
> Building Linus' tree, today's linux-next build (mips
> allmodconfig) failed like this:
> 
> In file included from /kisskb/src/include/linux/compiler_types.h:65:0,
>                  from <command-line>:0:
> include/linux/compiler_attributes.h:29:29: error: "__GCC4_has_attribute___no_sanitize_coverage__" is not defined [-Werror=undef]
>  # define __has_attribute(x) __GCC4_has_attribute_##x
>                              ^
> include/linux/compiler-gcc.h:125:29: note: in expansion of macro '__has_attribute'
>  #if defined(CONFIG_KCOV) && __has_attribute(__no_sanitize_coverage__)
>                              ^
> cc1: all warnings being treated as errors
> 
> Caused by commit
> 
>   540540d06e9d ("kcov: add __no_sanitize_coverage to fix noinstr for all architectures")
> 
> This ia a gcc 4.9 build, so presumably this?
> 
> diff -ru a/include/linux/compiler_attributes.h b/include/linux/compiler_attributes.h
> --- a/include/linux/compiler_attributes.h	2021-09-08 09:03:35.169225661 +1000
> +++ b/include/linux/compiler_attributes.h	2021-09-08 09:05:47.790907780 +1000
> @@ -36,6 +36,7 @@
>  # define __GCC4_has_attribute___no_profile_instrument_function__ 0
>  # define __GCC4_has_attribute___nonstring__           0
>  # define __GCC4_has_attribute___no_sanitize_address__ 1
> +# define __GCC4_has_attribute___no_sanitize_coverage__	0
>  # define __GCC4_has_attribute___no_sanitize_undefined__ 1
>  # define __GCC4_has_attribute___fallthrough__         0
>  #endif

Just to be clear, I haven't tested the above in any way.

-- 
Cheers,
Stephen Rothwell