From 62fa9463c6c6eb57479544a779274822ae40cf51 Mon Sep 17 00:00:00 2001 From: Baruch Siach Date: Sun, 13 Nov 2022 21:09:54 +0200 Subject: [PATCH] boot/arm-trusted-firmware: fix SSP disable in v2.2 ATF version 2.2 and older does not disable SSP when ENABLE_STACK_PROTECTOR is not set. This is because the compiler enables SSP by default, and ATF does not pass -fno-stack-protector to the compiler. Upstream commit 7af195e29a42 ("Disable stack protection explicitly") fixed the issue for v2.3 and newer. Add -fno-stack-protector in CFLAGS when BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP is not set to fix older ATF versions. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/3301821171 Cc: Dick Olsson Cc: Sergey Matyukevich Signed-off-by: Baruch Siach Signed-off-by: Thomas Petazzoni (cherry picked from commit 5e330ff030d11193ce716822c932c2a6b0f109c9) Signed-off-by: Peter Korsgaard --- boot/arm-trusted-firmware/arm-trusted-firmware.mk | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/boot/arm-trusted-firmware/arm-trusted-firmware.mk index f39a24128c..10fdc0ed82 100644 --- a/boot/arm-trusted-firmware/arm-trusted-firmware.mk +++ b/boot/arm-trusted-firmware/arm-trusted-firmware.mk @@ -56,11 +56,17 @@ ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \ ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP),y) ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \ ENABLE_STACK_PROTECTOR=$(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP_LEVEL)) +else +ARM_TRUSTED_FIRMWARE_CFLAGS += -fno-stack-protector +endif + +ifeq ($(BR2_PIC_PIE),y) +ARM_TRUSTED_FIRMWARE_CFLAGS += -fno-PIE endif ARM_TRUSTED_FIRMWARE_MAKE_ENV += \ $(TARGET_MAKE_ENV) \ - $(if $(BR2_PIC_PIE),CFLAGS="-fno-PIE") + CFLAGS="$(ARM_TRUSTED_FIRMWARE_CFLAGS)" ifeq ($(BR2_ARM_CPU_ARMV7A),y) ARM_TRUSTED_FIRMWARE_MAKE_OPTS += ARM_ARCH_MAJOR=7