Skip to content

Commit

Permalink
arm64: Drop unneeded stackleak_check_alloca()
Browse files Browse the repository at this point in the history
Drop stackleak_check_alloca() for arm64 since the STACKLEAK gcc plugin now
doesn't track stack depth overflow caused by alloca().

Signed-off-by: Alexander Popov <alex.popov@linux.com>
Tested-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
  • Loading branch information
Alexander Popov authored and Kees Cook committed Sep 4, 2018
1 parent 964c9df commit 6fcde90
Showing 1 changed file with 0 additions and 22 deletions.
22 changes: 0 additions & 22 deletions arch/arm64/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -493,25 +493,3 @@ void arch_setup_new_exec(void)
{
current->mm->context.flags = is_compat_task() ? MMCF_AARCH32 : 0;
}

#ifdef CONFIG_GCC_PLUGIN_STACKLEAK
void __used stackleak_check_alloca(unsigned long size)
{
unsigned long stack_left;
unsigned long current_sp = current_stack_pointer;
struct stack_info info;

BUG_ON(!on_accessible_stack(current, current_sp, &info));

stack_left = current_sp - info.low;

/*
* There's a good chance we're almost out of stack space if this
* is true. Using panic() over BUG() is more likely to give
* reliable debugging output.
*/
if (size >= stack_left)
panic("alloca() over the kernel stack boundary\n");
}
EXPORT_SYMBOL(stackleak_check_alloca);
#endif

0 comments on commit 6fcde90

Please sign in to comment.