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

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

Hi all,

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

-- 
Cheers,
Stephen Rothwell