Hey Miguel, The first error is during perf build process (make -C tools/perf install): [17:38:21] In file included from /usr/include/string.h:635, [17:38:21] from ui/tui/helpline.c:4: [17:38:21] In function 'strncpy', [17:38:21] inlined from 'tui_helpline__push' at ui/tui/helpline.c:27:2: [17:38:21] /usr/include/x86_64-linux-gnu/bits/string3.h:126:10: error: '__builtin_strncpy' specified bound 512 equals destination size [-Werror=stringop-truncation] [17:38:21] 126 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest)); [17:38:21] | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [17:38:21] cc1: all warnings being treated as errors [17:38:21] /cfsetup_build/build/linux-4.19.43/tools/build/Makefile.build:96: recipe for target '/cfsetup_build/build/amd64/perf/ui/tui/helpline.o' failed [17:38:21] mv: cannot stat '/cfsetup_build/build/amd64/perf/ui/tui/.helpline.o.tmp': No such file or directory [17:38:21] make[6]: *** [/cfsetup_build/build/amd64/perf/ui/tui/helpline.o] Error 1 [17:38:21] make[5]: *** [tui] Error 2 [17:38:21] make[4]: *** [ui] Error 2 I see that stringop-truncation is disabled in toplevel Makefile, but not sure if perf is using it. If I disable perf build, the next thing is warnings like these: mm/slub.o: warning: objtool: init_cache_random_seq()+0x36: sibling call from callable instruction with modified stack frame mm/slub.o: warning: objtool: slab_out_of_memory()+0x3b: sibling call from callable instruction with modified stack frame mm/slub.o: warning: objtool: slab_pad_check.part.0()+0x7c: sibling call from callable instruction with modified stack frame mm/slub.o: warning: objtool: check_slab()+0x1c: sibling call from callable instruction with modified stack frame After patching that I see: In file included from /tmp/build/linux-4.19.43/arch/x86/crypto/aes_glue.c:6: /tmp/build/linux-4.19.43/include/linux/module.h:133:6: warning: 'init_module' specifies less restrictive attribute than its target 'aes_init': 'cold' [-Wmissing-attributes] 133 | int init_module(void) __attribute__((alias(#initfn))); | ^~~~~~~~~~~ /tmp/build/linux-4.19.43/arch/x86/crypto/aes_glue.c:64:1: note: in expansion of macro 'module_init' 64 | module_init(aes_init); | ^~~~~~~~~~~ /tmp/build/linux-4.19.43/arch/x86/crypto/aes_glue.c:54:19: note: 'init_module' target declared here 54 | static int __init aes_init(void) | ^~~~~~~~ I'm not really comfortable with all the warnings, so I stopped the build, maybe it indeed compiles through the end. That's with GCC 9.1 on Debian Stretch (custom built package, Debian has older one). On Thu, May 16, 2019 at 12:24 PM Miguel Ojeda <miguel.ojeda.sandonis@xxxxxxxxx> wrote: > > Hi Ivan, > > On Wed, May 15, 2019 at 8:55 PM Ivan Babrou <ivan@xxxxxxxxxxxxxx> wrote: > > > > Hey, > > > > It looks like it's not possible to build Linux 4.19.43 (latest LTS as > > of today) with GCC 9.1 (latest stable GCC). From what I see, some > > support for GCC 9 was added by Miguel (cc'd) in 4.20, but it was never > > backported into 4.19. > > I just compiled 4.19.43 allmodconfig with GCC 9.1.1 and it succeeded > (even if it gives a lot of warnings from objtool and > -Wmissing-attributes). > > Which errors are you seeing? On which config? > > Cheers, > Miguel