]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: Unify kernel fault reporting
authorMark Rutland <mark.rutland@arm.com>
Mon, 21 May 2018 13:14:51 +0000 (14:14 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Wed, 23 May 2018 10:46:42 +0000 (11:46 +0100)
commit2588e4bfa789bae6d639056682f3b89a93daa8ef
tree6a3875c8f26d20bda4d668a12ee32fe077aac176
parent06d348cbee3234b9b4a81b7ecdb1e888a777d2bf
arm64: Unify kernel fault reporting

In do_page_fault(), we handle some kernel faults early, and simply
die() with a message. For faults handled later, we dump the faulting
address, decode the ESR, walk the page tables, and perform a number of
steps to ensure that this data is reported.

Let's unify the handling of fatal kernel faults with a new
die_kernel_fault() helper, handling all of these details. This is
largely the same as the existing logic in __do_kernel_fault(), except
that addresses are consistently padded to 16 hex characters, as would be
expected for a 64-bit address.

The messages currently logged in do_page_fault are adjusted to fit into
the die_kernel_fault() message template.

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/mm/fault.c