mirror of https://gitee.com/openkylin/linux.git
[PATCH] Add the __stack_chk_fail() function
GCC emits a call to a __stack_chk_fail() function when the stack canary is not matching the expected value. Since this is a bad security issue; lets panic the kernel rather than limping along; the kernel really can't be trusted anymore when this happens. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andi Kleen <ak@suse.de> CC: Andi Kleen <ak@suse.de>
This commit is contained in:
parent
0a42540580
commit
3162f751d0
|
@ -271,3 +271,15 @@ void oops_exit(void)
|
|||
{
|
||||
do_oops_enter_exit();
|
||||
}
|
||||
|
||||
#ifdef CONFIG_CC_STACKPROTECTOR
|
||||
/*
|
||||
* Called when gcc's -fstack-protector feature is used, and
|
||||
* gcc detects corruption of the on-stack canary value
|
||||
*/
|
||||
void __stack_chk_fail(void)
|
||||
{
|
||||
panic("stack-protector: Kernel stack is corrupted");
|
||||
}
|
||||
EXPORT_SYMBOL(__stack_chk_fail);
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue