[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2024072633-easel-erasure-18fa@gregkh>
Date: Fri, 26 Jul 2024 09:49:49 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: Jari Ruusu <jariruusu@...tonmail.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"stable@...r.kernel.org" <stable@...r.kernel.org>
Subject: Re: [PATCH 5.10 00/59] 5.10.223-rc1 review
On Fri, Jul 26, 2024 at 07:25:21AM +0000, Jari Ruusu wrote:
> Some older systems still compile kernels with old gcc version.
>
> $ grep -B3 "^GNU C" linux-5.10.223-rc1/Documentation/Changes
> ====================== =============== ========================================
> Program Minimal version Command to check the version
> ====================== =============== ========================================
> GNU C 4.9 gcc --version
>
> These warnings and errors show up when compiling with gcc 4.9.2
>
> UPD include/config/kernel.release
> UPD include/generated/uapi/linux/version.h
> UPD include/generated/utsrelease.h
> CC scripts/mod/empty.o
> In file included from ././include/linux/compiler_types.h:65:0,
> from <command-line>:0:
> ./include/linux/compiler_attributes.h:29:29: warning: "__GCC4_has_attribute___uninitialized__" is not defined [-Wundef]
> # define __has_attribute(x) __GCC4_has_attribute_##x
> ^
> ./include/linux/compiler_attributes.h:278:5: note: in expansion of macro '__has_attribute'
> #if __has_attribute(__uninitialized__)
> ^
> [SNIP]
> AR arch/x86/events/built-in.a
> CC arch/x86/kvm/../../../virt/kvm/kvm_main.o
> In file included from ././include/linux/compiler_types.h:65:0,
> from <command-line>:0:
> ./include/linux/compiler_attributes.h:29:29: error: "__GCC4_has_attribute___uninitialized__" is not defined [-Werror=undef]
> # define __has_attribute(x) __GCC4_has_attribute_##x
> ^
> ./include/linux/compiler_attributes.h:278:5: note: in expansion of macro '__has_attribute'
> #if __has_attribute(__uninitialized__)
> ^
> cc1: all warnings being treated as errors
> make[2]: *** [scripts/Makefile.build:286: arch/x86/kvm/../../../virt/kvm/kvm_main.o] Error 1
> make[1]: *** [scripts/Makefile.build:503: arch/x86/kvm] Error 2
> make: *** [Makefile:1832: arch/x86] Error 2
>
> Following patch fixes this. Upstream won't need this because
> newer kernels are not compilable with gcc 4.9
>
> --- ./include/linux/compiler_attributes.h.OLD
> +++ ./include/linux/compiler_attributes.h
> @@ -37,6 +37,7 @@
> # define __GCC4_has_attribute___nonstring__ 0
> # define __GCC4_has_attribute___no_sanitize_address__ (__GNUC_MINOR__ >= 8)
> # define __GCC4_has_attribute___no_sanitize_undefined__ (__GNUC_MINOR__ >= 9)
> +# define __GCC4_has_attribute___uninitialized__ 0
> # define __GCC4_has_attribute___fallthrough__ 0
> # define __GCC4_has_attribute___warning__ 1
> #endif
>
> Fixes: upstream fd7eea27a3ae "Compiler Attributes: Add __uninitialized macro"
> Signed-off-by: Jari Ruusu <jariruusu@...tonmail.com>
Please submit this in a format in which we can apply it, thanks!
greg k-h
Powered by blists - more mailing lists