Merge https://source.denx.de/u-boot/custodians/u-boot-usb
[platform/kernel/u-boot.git] / common / stackprot.c
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  *  Copyright 2021 Broadcom
4  */
5
6 #include <common.h>
7 #include <asm/global_data.h>
8
9 DECLARE_GLOBAL_DATA_PTR;
10
11 unsigned long __stack_chk_guard = (unsigned long)(0xfeedf00ddeadbeef & ~0UL);
12
13 void __stack_chk_fail(void)
14 {
15         void *ra;
16
17         ra = __builtin_extract_return_addr(__builtin_return_address(0));
18         panic("Stack smashing detected in function:\n%p relocated from %p",
19               ra, ra - gd->reloc_off);
20 }