All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38
@ 2023-08-17 23:08 Romain Naour
  2023-08-17 23:08 ` [Buildroot] [PATCH 2/4] configs/pc_x86_64_{bios, efi}_defconfig: add midding libelf kernel dependency Romain Naour
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Romain Naour @ 2023-08-17 23:08 UTC (permalink / raw)
  To: buildroot; +Cc: Romain Naour

Backport an upstream patch fixing the build with binutils >= 2.38
for riscv's for Zicsr and Zifencei.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/4839060608
https://gitlab.com/buildroot.org/buildroot/-/jobs/4839060605

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 ...iscv-Fix-build-against-binutils-2.38.patch | 58 +++++++++++++++++++
 configs/sipeed_maix_bit_sdcard_defconfig      |  1 +
 configs/sipeed_maix_dock_sdcard_defconfig     |  1 +
 3 files changed, 60 insertions(+)
 create mode 100644 board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch

diff --git a/board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch b/board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch
new file mode 100644
index 0000000000..52b496f054
--- /dev/null
+++ b/board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch
@@ -0,0 +1,58 @@
+From 0cf11f3c0478f4286adcfb09bf9137f8b00212e3 Mon Sep 17 00:00:00 2001
+From: Alexandre Ghiti <alexandre.ghiti@canonical.com>
+Date: Mon, 3 Oct 2022 18:07:54 +0200
+Subject: [PATCH] riscv: Fix build against binutils 2.38
+
+The following description is copied from the equivalent patch for the
+Linux Kernel proposed by Aurelien Jarno:
+
+>From version 2.38, binutils default to ISA spec version 20191213. This
+means that the csr read/write (csrr*/csrw*) instructions and fence.i
+instruction has separated from the `I` extension, become two standalone
+extensions: Zicsr and Zifencei. As the kernel uses those instruction,
+this causes the following build failure:
+
+arch/riscv/cpu/mtrap.S: Assembler messages:
+arch/riscv/cpu/mtrap.S:65: Error: unrecognized opcode `csrr a0,scause'
+arch/riscv/cpu/mtrap.S:66: Error: unrecognized opcode `csrr a1,sepc'
+arch/riscv/cpu/mtrap.S:67: Error: unrecognized opcode `csrr a2,stval'
+arch/riscv/cpu/mtrap.S:70: Error: unrecognized opcode `csrw sepc,a0'
+
+Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
+Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
+Tested-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
+Tested-by: Heiko Stuebner <heiko@sntech.de>
+Tested-by: Christian Stewart <christian@paral.in>
+Reviewed-by: Rick Chen <rick@andestech.com>
+(cherry picked from commit 1dde977518f13824b847e23275001191139bc384)
+Upstream: https://gitlab.com/u-boot/u-boot/-/commit/1dde977518f13824b847e23275001191139bc384
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ arch/riscv/Makefile | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile
+index 0b80eb8d864..53d1194ffb6 100644
+--- a/arch/riscv/Makefile
++++ b/arch/riscv/Makefile
+@@ -24,7 +24,16 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y)
+ 	CMODEL = medany
+ endif
+ 
+-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \
++RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C)
++
++# Newer binutils versions default to ISA spec version 20191213 which moves some
++# instructions from the I extension to the Zicsr and Zifencei extensions.
++toolchain-need-zicsr-zifencei := $(call cc-option-yn, -mabi=$(ABI) -march=$(RISCV_MARCH)_zicsr_zifencei)
++ifeq ($(toolchain-need-zicsr-zifencei),y)
++	RISCV_MARCH := $(RISCV_MARCH)_zicsr_zifencei
++endif
++
++ARCH_FLAGS = -march=$(RISCV_MARCH) -mabi=$(ABI) \
+ 	     -mcmodel=$(CMODEL)
+ 
+ PLATFORM_CPPFLAGS	+= $(ARCH_FLAGS)
+-- 
+2.41.0
+
diff --git a/configs/sipeed_maix_bit_sdcard_defconfig b/configs/sipeed_maix_bit_sdcard_defconfig
index 34769eeca8..0cfff26337 100644
--- a/configs/sipeed_maix_bit_sdcard_defconfig
+++ b/configs/sipeed_maix_bit_sdcard_defconfig
@@ -17,6 +17,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y
 BR2_BINFMT_FLAT=y
 BR2_BINFMT_FLAT_ONE=y
 # BR2_TARGET_ENABLE_ROOT_LOGIN is not set
+BR2_GLOBAL_PATCH_DIR="board/canaan/k210-soc/patches"
 
 # Kernel
 BR2_LINUX_KERNEL=y
diff --git a/configs/sipeed_maix_dock_sdcard_defconfig b/configs/sipeed_maix_dock_sdcard_defconfig
index 62f6a0e0b8..db075360cc 100644
--- a/configs/sipeed_maix_dock_sdcard_defconfig
+++ b/configs/sipeed_maix_dock_sdcard_defconfig
@@ -17,6 +17,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y
 BR2_BINFMT_FLAT=y
 BR2_BINFMT_FLAT_ONE=y
 # BR2_TARGET_ENABLE_ROOT_LOGIN is not set
+BR2_GLOBAL_PATCH_DIR="board/canaan/k210-soc/patches"
 
 # Kernel
 BR2_LINUX_KERNEL=y
-- 
2.41.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 2/4] configs/pc_x86_64_{bios, efi}_defconfig: add midding libelf kernel dependency
  2023-08-17 23:08 [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Romain Naour
@ 2023-08-17 23:08 ` Romain Naour
  2023-08-17 23:08 ` [Buildroot] [PATCH 3/4] configs/ci20_defconfig: bump to kernel 5.4.254 Romain Naour
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Romain Naour @ 2023-08-17 23:08 UTC (permalink / raw)
  To: buildroot; +Cc: Romain Naour

objtool built by the kernel requires libelf

ldd output/build/linux-6.1.24/tools/objtool/objtool
  linux-vdso.so.1
  libelf.so.1 => output/host/lib/libelf.so.1

While updating the kernel [1] we forgot to select
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF to provide Buildroot's host-libelf.
Using host-libelf avoid linking with libelf installed on the host or
failing to build objtool if libelf is not installed.

[1] d45538f2e7acc1b330b191d559a81e8c1a961648

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436869
https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436872

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 configs/pc_x86_64_bios_defconfig | 1 +
 configs/pc_x86_64_efi_defconfig  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/configs/pc_x86_64_bios_defconfig b/configs/pc_x86_64_bios_defconfig
index a057ddd259..6032544d2d 100644
--- a/configs/pc_x86_64_bios_defconfig
+++ b/configs/pc_x86_64_bios_defconfig
@@ -32,6 +32,7 @@ BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/pc/linux.config"
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
 BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
 
 # Firmware
 BR2_PACKAGE_LINUX_FIRMWARE=y
diff --git a/configs/pc_x86_64_efi_defconfig b/configs/pc_x86_64_efi_defconfig
index efa603f0c0..afb652f3fc 100644
--- a/configs/pc_x86_64_efi_defconfig
+++ b/configs/pc_x86_64_efi_defconfig
@@ -33,6 +33,7 @@ BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/pc/linux.config"
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
 BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
 
 # Firmware
 BR2_PACKAGE_LINUX_FIRMWARE=y
-- 
2.41.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 3/4] configs/ci20_defconfig: bump to kernel 5.4.254
  2023-08-17 23:08 [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Romain Naour
  2023-08-17 23:08 ` [Buildroot] [PATCH 2/4] configs/pc_x86_64_{bios, efi}_defconfig: add midding libelf kernel dependency Romain Naour
@ 2023-08-17 23:08 ` Romain Naour
  2023-08-17 23:08 ` [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support Romain Naour
  2023-08-20 21:40 ` [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Thomas Petazzoni via buildroot
  3 siblings, 0 replies; 9+ messages in thread
From: Romain Naour @ 2023-08-17 23:08 UTC (permalink / raw)
  To: buildroot; +Cc: Romain Naour

Bump the kernel to the latest release of 5.4 kernel series
to fix an issue with gcc 12.

arch/mips/jz4740/setup.c: In function 'plat_mem_setup':
arch/mips/jz4740/setup.c:64:25: error: comparison between two arrays [-Werror=array-compare]
   64 |         if (__dtb_start != __dtb_end)
      |                         ^~
arch/mips/jz4740/setup.c:64:25: note: use '&__dtb_start[0] != &__dtb_end[0]' to compare the addresses
  CC      fs/debugfs/file.o
cc1: all warnings being treated as errors

Fixed in v5.4.195:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a60def7568216684f62b117c199429c4a9a89570

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436573

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 configs/ci20_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configs/ci20_defconfig b/configs/ci20_defconfig
index 09eddc4e68..7e119376e1 100644
--- a/configs/ci20_defconfig
+++ b/configs/ci20_defconfig
@@ -15,7 +15,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ci20/genimage.cfg"
 # kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.58"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.254"
 BR2_LINUX_KERNEL_DEFCONFIG="ci20"
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
 
-- 
2.41.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support
  2023-08-17 23:08 [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Romain Naour
  2023-08-17 23:08 ` [Buildroot] [PATCH 2/4] configs/pc_x86_64_{bios, efi}_defconfig: add midding libelf kernel dependency Romain Naour
  2023-08-17 23:08 ` [Buildroot] [PATCH 3/4] configs/ci20_defconfig: bump to kernel 5.4.254 Romain Naour
@ 2023-08-17 23:08 ` Romain Naour
  2023-10-20 10:07   ` Arnout Vandecappelle via buildroot
  2023-08-20 21:40 ` [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Thomas Petazzoni via buildroot
  3 siblings, 1 reply; 9+ messages in thread
From: Romain Naour @ 2023-08-17 23:08 UTC (permalink / raw)
  To: buildroot; +Cc: Romain Naour

This new binutils version break the ATF build due to new linker warnings:

 ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions

From [1]
"Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
 of a new warning when linking the bl*.elf in the form:

 ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
 ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
 ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
 ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions

These new warnings are enbaled by default to secure elf binaries:
  - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
  - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
"

Bump the ATF custom version to 2.9 for binutils 2.39+ support.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436283

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 configs/avenger96_defconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configs/avenger96_defconfig b/configs/avenger96_defconfig
index 1f8e7a50d1..adfd7585c4 100644
--- a/configs/avenger96_defconfig
+++ b/configs/avenger96_defconfig
@@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
 # BR2_TARGET_ROOTFS_TAR is not set
 BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9"
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1"
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb"
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y
-- 
2.41.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38
  2023-08-17 23:08 [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Romain Naour
                   ` (2 preceding siblings ...)
  2023-08-17 23:08 ` [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support Romain Naour
@ 2023-08-20 21:40 ` Thomas Petazzoni via buildroot
  3 siblings, 0 replies; 9+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-08-20 21:40 UTC (permalink / raw)
  To: Romain Naour; +Cc: buildroot

On Fri, 18 Aug 2023 01:08:41 +0200
Romain Naour <romain.naour@gmail.com> wrote:

> Backport an upstream patch fixing the build with binutils >= 2.38
> for riscv's for Zicsr and Zifencei.
> 
> Fixes:
> https://gitlab.com/buildroot.org/buildroot/-/jobs/4839060608
> https://gitlab.com/buildroot.org/buildroot/-/jobs/4839060605
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> ---
>  ...iscv-Fix-build-against-binutils-2.38.patch | 58 +++++++++++++++++++
>  configs/sipeed_maix_bit_sdcard_defconfig      |  1 +
>  configs/sipeed_maix_dock_sdcard_defconfig     |  1 +
>  3 files changed, 60 insertions(+)
>  create mode 100644 board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch

Thanks, series applied to master. However I believe it would be good to
get some updates of those defconfigs by the people who originally
submitted them, and who therefore have the hardware (or alternatively
drop some of those defconfigs).

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support
  2023-08-17 23:08 ` [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support Romain Naour
@ 2023-10-20 10:07   ` Arnout Vandecappelle via buildroot
  2023-10-22 15:15     ` Dario Binacchi via buildroot
  2023-10-25 14:50     ` Romain Naour
  0 siblings, 2 replies; 9+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2023-10-20 10:07 UTC (permalink / raw)
  To: Romain Naour, buildroot; +Cc: Marleen Vos, Dario Binacchi

  Hi Romain,

On 18/08/2023 01:08, Romain Naour wrote:
> This new binutils version break the ATF build due to new linker warnings:
> 
>   ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
> 
>  From [1]
> "Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
>   of a new warning when linking the bl*.elf in the form:
> 
>   ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
>   ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
>   ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
>   ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
> 
> These new warnings are enbaled by default to secure elf binaries:
>    - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
>    - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
> "
> 
> Bump the ATF custom version to 2.9 for binutils 2.39+ support.

  Did you test this on the board? I now have an avenger96 board (*) thanks to 
Embedded Recipes, and I did a quick test of this defconfig and it gives an error 
in TF-A...

  Dario, Peter, I believe both of you also had an avenger96 board, did you test 
it recently?


  Regards,
  Arnout

(*) Actually I no longer have it, I gave it to my colleague Marleen (in Cc)

> 
> Fixes:
> https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436283
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> ---
>   configs/avenger96_defconfig | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/configs/avenger96_defconfig b/configs/avenger96_defconfig
> index 1f8e7a50d1..adfd7585c4 100644
> --- a/configs/avenger96_defconfig
> +++ b/configs/avenger96_defconfig
> @@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
>   # BR2_TARGET_ROOTFS_TAR is not set
>   BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
> -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9"
>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1"
>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb"
>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support
  2023-10-20 10:07   ` Arnout Vandecappelle via buildroot
@ 2023-10-22 15:15     ` Dario Binacchi via buildroot
  2023-10-25 14:50     ` Romain Naour
  1 sibling, 0 replies; 9+ messages in thread
From: Dario Binacchi via buildroot @ 2023-10-22 15:15 UTC (permalink / raw)
  To: Arnout Vandecappelle, Romain Naour, buildroot; +Cc: Marleen Vos

Arnout, All

> Il 20/10/2023 12:07 CEST Arnout Vandecappelle <arnout@mind.be> ha scritto:
> 
>  
> Hi Romain,
> 
> On 18/08/2023 01:08, Romain Naour wrote:
> > This new binutils version break the ATF build due to new linker warnings:
> > 
> >   ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
> > 
> >  From [1]
> > "Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
> >   of a new warning when linking the bl*.elf in the form:
> > 
> >   ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
> >   ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
> >   ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
> >   ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
> > 
> > These new warnings are enbaled by default to secure elf binaries:
> >    - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
> >    - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
> > "
> > 
> > Bump the ATF custom version to 2.9 for binutils 2.39+ support.
> 
>   Did you test this on the board? I now have an avenger96 board (*) thanks to 
> Embedded Recipes, and I did a quick test of this defconfig and it gives an error 
> in TF-A...
> 
>   Dario, Peter, I believe both of you also had an avenger96 board, did you test 
> it recently?
> 

I don't have an avenger96 board. But ASAP, I will run some tests on the BSH SMM S2 board.

Regards,
Dario
 
> 
>   Regards,
>   Arnout
> 
> (*) Actually I no longer have it, I gave it to my colleague Marleen (in Cc)
> 
> > 
> > Fixes:
> > https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436283
> > 
> > Signed-off-by: Romain Naour <romain.naour@gmail.com>
> > ---
> >   configs/avenger96_defconfig | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/configs/avenger96_defconfig b/configs/avenger96_defconfig
> > index 1f8e7a50d1..adfd7585c4 100644
> > --- a/configs/avenger96_defconfig
> > +++ b/configs/avenger96_defconfig
> > @@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
> >   # BR2_TARGET_ROOTFS_TAR is not set
> >   BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> >   BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
> > -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2"
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9"
> >   BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1"
> >   BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb"
> >   BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support
  2023-10-20 10:07   ` Arnout Vandecappelle via buildroot
  2023-10-22 15:15     ` Dario Binacchi via buildroot
@ 2023-10-25 14:50     ` Romain Naour
  2023-10-25 19:19       ` Peter Korsgaard
  1 sibling, 1 reply; 9+ messages in thread
From: Romain Naour @ 2023-10-25 14:50 UTC (permalink / raw)
  To: Arnout Vandecappelle, Romain Naour, buildroot; +Cc: Marleen Vos, Dario Binacchi

Hello Arnout, All,

Le 20/10/2023 à 12:07, Arnout Vandecappelle via buildroot a écrit :
>  Hi Romain,
> 
> On 18/08/2023 01:08, Romain Naour wrote:
>> This new binutils version break the ATF build due to new linker warnings:
>>
>>   ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
>>
>>  From [1]
>> "Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
>>   of a new warning when linking the bl*.elf in the form:
>>
>>   ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies
>> executable stack
>>   ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future
>> version of the linker
>>   ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
>>   ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
>>
>> These new warnings are enbaled by default to secure elf binaries:
>>    -
>> https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
>>    -
>> https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
>> "
>>
>> Bump the ATF custom version to 2.9 for binutils 2.39+ support.
> 
>  Did you test this on the board? I now have an avenger96 board (*) thanks to
> Embedded Recipes, and I did a quick test of this defconfig and it gives an error
> in TF-A...

This is my best effort attempt to fix binutils 2.39+ issues on boards I don't
have... Hence the discussion we had during the last meeting about using prebuilt
toolchain for boards defconfig. Indeed, toolchain part are updated faster than
some BSP board.

binutils: 2 releases per year
gcc: 1 release per year
glibc: 2 releases per year

I would suggest to revert this commit and switch to a prebuilt toolchain using
an old binutils version if we can't update this defconfig.

> 
>  Dario, Peter, I believe both of you also had an avenger96 board, did you test
> it recently?

The issue is appear on the gitlab-ci since binutils 2.39 is the default version:

https://gitlab.com/buildroot.org/buildroot/-/jobs/4603995882

https://gitlab.com/buildroot.org/buildroot/-/commit/fb50eab8a5e6b82dd0a2916b6805ab712d4d7350

but the avenger96_defconfig has been added back in 2021.02 (and never updated
since then).

https://gitlab.com/buildroot.org/buildroot/-/commit/2107f7a75bf70df85ce1a0d8f7f2f67ed62a2921

So today we are using a toolchain using releases that were not yet available at
the time that the avenger96_defconfig was contributed.

Best regards,
Romain

> 
> 
>  Regards,
>  Arnout
> 
> (*) Actually I no longer have it, I gave it to my colleague Marleen (in Cc)
> 
>>
>> Fixes:
>> https://gitlab.com/buildroot.org/buildroot/-/jobs/4889436283
>>
>> Signed-off-by: Romain Naour <romain.naour@gmail.com>
>> ---
>>   configs/avenger96_defconfig | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/configs/avenger96_defconfig b/configs/avenger96_defconfig
>> index 1f8e7a50d1..adfd7585c4 100644
>> --- a/configs/avenger96_defconfig
>> +++ b/configs/avenger96_defconfig
>> @@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
>>   # BR2_TARGET_ROOTFS_TAR is not set
>>   BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
>>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
>> -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2"
>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9"
>>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1"
>>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1
>> AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb"
>>   BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support
  2023-10-25 14:50     ` Romain Naour
@ 2023-10-25 19:19       ` Peter Korsgaard
  0 siblings, 0 replies; 9+ messages in thread
From: Peter Korsgaard @ 2023-10-25 19:19 UTC (permalink / raw)
  To: Romain Naour; +Cc: Marleen Vos, Romain Naour, Dario Binacchi, buildroot

>>>>> "Romain" == Romain Naour <romain.naour@smile.fr> writes:

Hi,

 > So today we are using a toolchain using releases that were not yet available at
 > the time that the avenger96_defconfig was contributed.

I do have an avenger96 board, but I don't recall having seen any
notifications about failures? Anyway, I'll get my board up and running
again and verify.

-- 
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-10-25 19:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-17 23:08 [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Romain Naour
2023-08-17 23:08 ` [Buildroot] [PATCH 2/4] configs/pc_x86_64_{bios, efi}_defconfig: add midding libelf kernel dependency Romain Naour
2023-08-17 23:08 ` [Buildroot] [PATCH 3/4] configs/ci20_defconfig: bump to kernel 5.4.254 Romain Naour
2023-08-17 23:08 ` [Buildroot] [PATCH 4/4] configs/avenger96_defconfig: bump ATF version to 2.9 for binutils 2.39+ support Romain Naour
2023-10-20 10:07   ` Arnout Vandecappelle via buildroot
2023-10-22 15:15     ` Dario Binacchi via buildroot
2023-10-25 14:50     ` Romain Naour
2023-10-25 19:19       ` Peter Korsgaard
2023-08-20 21:40 ` [Buildroot] [PATCH 1/4] configs/sipeed_maix_{bit, dock}_sdcard_defconfig: fix build with binutils >= 2.38 Thomas Petazzoni via buildroot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.