On 02.11.22 13:55, Ahmad Fatoum wrote: > On 02.11.22 13:48, Ahmad Fatoum wrote: >> We don't care for permission of ELF segments, but GNU ld (BFD) >> does and now with binutils 2.39+, it reports: >> >> ld: warning: defaultenv/defaultenv-2-menu.bbenv.o: missing >> .note.GNU-stack section implies executable stack >> >> ld: NOTE: This behaviour is deprecated and will be removed in a future >> version of the linker >> >> Instead of touching all assembly objects and scripts creating them to >> add the section, just set -z noexecstack at link-time. This is already >> the LLVM linker (lld) default. >> >> Reported-by: Christian Melki <christian.melki@xxxxxxxxxx> >> Signed-off-by: Ahmad Fatoum <ahmad@xxxxxx> >> --- > > Please dismiss. I think we should just add it to KBUILD_LDFLAGS globally. I'll be away for a few weeks, so noting here how Linux does it: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ffcf9c5700e49c0aee42dcba9a12ba21338e8136 https://lore.kernel.org/all/20220808192321.3490995-1-ndesaulniers@xxxxxxxxxx/ In case someone else wants to get rid of the warning in the meantime. Cheers, Ahmad > >> Makefile | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/Makefile b/Makefile >> index 26a0999a2e20..e57b8a4a1364 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -450,7 +450,7 @@ KBUILD_CFLAGS_KERNEL := >> KBUILD_AFLAGS_MODULE := -DMODULE >> KBUILD_CFLAGS_MODULE := -DMODULE >> >> -LDFLAGS_barebox := -Map barebox.map >> +LDFLAGS_barebox := -Map barebox.map -z noexecstack >> >> # Avoid 'Not enough room for program headers' error on binutils 2.28 onwards. >> LDFLAGS_barebox += $(call ld-option, --no-dynamic-linker) > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |