Message ID | 20220425115603.781311-7-mark.rutland@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | stackleak: fixes and rework | expand |
diff --git a/kernel/stackleak.c b/kernel/stackleak.c index f597d3323729d..ba346d46218f5 100644 --- a/kernel/stackleak.c +++ b/kernel/stackleak.c @@ -79,10 +79,6 @@ static __always_inline void __stackleak_erase(void) unsigned int poison_count = 0; const unsigned int depth = STACKLEAK_SEARCH_DEPTH / sizeof(unsigned long); - /* Check that 'lowest_stack' value is sane */ - if (unlikely(erase_low - task_stack_low >= THREAD_SIZE)) - erase_low = task_stack_low; - /* Search for the poison value in the kernel stack */ while (erase_low > task_stack_low && poison_count <= depth) { if (*(unsigned long *)erase_low == STACKLEAK_POISON)
In __stackleak_erase() we check that the `erase_low` value derived from `current->lowest_stack` is above the lowest legitimate stack pointer value, but this is already enforced by stackleak_track_stack() when recording the lowest stack value. Remove the redundant check. There should be no functional change as a result of this patch. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Alexander Popov <alex.popov@linux.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Kees Cook <keescook@chromium.org> --- kernel/stackleak.c | 4 ---- 1 file changed, 4 deletions(-)