]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc: make stack walking KASAN-safe
authorDaniel Axtens <dja@axtens.net>
Mon, 14 Jun 2021 12:09:07 +0000 (22:09 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 16 Jun 2021 14:09:11 +0000 (00:09 +1000)
commit0261f653129ec8f01167d9422c44558fe223bcf1
tree78ce3f3f8d13289e02ee7fc9782ae210abb361c0
parent95ead33eb0953f079dd525dac71557b828add6b2
powerpc: make stack walking KASAN-safe

Make our stack-walking code KASAN-safe by using __no_sanitize_address.
Generic code, arm64, s390 and x86 all make accesses unchecked for similar
sorts of reasons: when unwinding a stack, we might touch memory that KASAN
has marked as being out-of-bounds. In ppc64 KASAN development, I hit this
sometimes when checking for an exception frame - because we're checking
an arbitrary offset into the stack frame.

See commit f5694c8ca4c9 ("s390/kasan: avoid false positives during stack
unwind"), commit bcfeff258756 ("arm64: disable kasan when accessing
frame->fp in unwind_frame"), commit 1c5a02762b5b ("x86/dumpstack:
Prevent KASAN false positive warnings") and commit 4042f25c0437
("tracing, kasan: Silence Kasan warning in check_stack of stack_tracer").

Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210614120907.1952321-1-dja@axtens.net
arch/powerpc/kernel/process.c
arch/powerpc/kernel/stacktrace.c
arch/powerpc/perf/callchain.c