]> asedeno.scripts.mit.edu Git - linux.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)
commitc870f14ea115bb1d9e57cad3ec6b876cf5542f9f
tree6a3875c8f26d20bda4d668a12ee32fe077aac176
parent969e61ba87f9195c18130a5e88a966837fdb6a2c
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