[PATCH] ARM: socfpga: Fix crash with CONFIG_FORTIRY_SOURCE

From: Takashi Iwai
Date: Wed Nov 17 2021 - 14:33:01 EST


When CONFIG_FORTIFY_SOURCE is set, memcpy() checks the potential
buffer overflow and panics. The code in sofcpga bootstrapping
contains the memcpy() calls are mistakenly translated as the shorter
size, hence it triggers a panic as if it were overflowing.

This patch adds the __NO_FORTIFY define for avoiding the
false-positive crash.

Buglink: https://bugzilla.suse.com/show_bug.cgi?id=1192473
Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
---

I took an easier path for now, as the attempt with a foced cast
failed. If there is a better way to handle, let me know, I'd happily
resubmit. Thanks!

arch/arm/mach-socfpga/platsmp.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/arm/mach-socfpga/platsmp.c b/arch/arm/mach-socfpga/platsmp.c
index fbb80b883e5d..d46b1af96a8a 100644
--- a/arch/arm/mach-socfpga/platsmp.c
+++ b/arch/arm/mach-socfpga/platsmp.c
@@ -5,6 +5,9 @@
* Based on platsmp.c, Copyright (C) 2002 ARM Ltd.
* Copyright (C) 2012 Altera Corporation
*/
+
+#define __NO_FORTIFY /* need to avoid the crash with memcpy() calls */
+
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/smp.h>
--
2.26.2