summaryrefslogtreecommitdiffstats
path: root/common/stackprot.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2021-04-20 07:32:04 -0400
committerTom Rini <trini@konsulko.com>2021-04-20 07:32:04 -0400
commit842d049be23976ebcbb2522fa8d752d3aae8631a (patch)
treeca4ff1ffa3d447d51e945ce4cd9f75f6e80babe9 /common/stackprot.c
parenteed05148c261e3b5f00b11a7a14bf0222b80a0ac (diff)
parent4e9bce12432492aa7a7c2121d9fae1640606ace5 (diff)
downloadu-boot-842d049be23976ebcbb2522fa8d752d3aae8631a.tar.gz
u-boot-842d049be23976ebcbb2522fa8d752d3aae8631a.tar.xz
u-boot-842d049be23976ebcbb2522fa8d752d3aae8631a.zip
Merge branch '2021-04-20-assorted-improvements'
- ARM64 GIC fix, CONFIG_IRQ now moved to Kconfig - IDE, lz4 fixes - octeontx cleanups / enhancements - highbank DM migration - psci updates - Enable use of -fstack-protector
Diffstat (limited to 'common/stackprot.c')
-rw-r--r--common/stackprot.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/common/stackprot.c b/common/stackprot.c
new file mode 100644
index 0000000000..d5b7061665
--- /dev/null
+++ b/common/stackprot.c
@@ -0,0 +1,20 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2021 Broadcom
+ */
+
+#include <common.h>
+#include <asm/global_data.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+unsigned long __stack_chk_guard = (unsigned long)(0xfeedf00ddeadbeef & ~0UL);
+
+void __stack_chk_fail(void)
+{
+ void *ra;
+
+ ra = __builtin_extract_return_addr(__builtin_return_address(0));
+ panic("Stack smashing detected in function:\n%p relocated from %p",
+ ra, ra - gd->reloc_off);
+}