[PATCH] arm64: mm: fault: replace the behavior of fault_info[18]

Leesoo Ahn lsahn at ooseel.net
Sat Dec 14 01:19:36 PST 2024


Replace the behavior of 18th element of fault_info with the 'fn' member to
do_sea(..) and 'name' to 'level -2 (translation table walk)' based on
the information[1] of the latest reference manual[2].

The information has described in the chapter, D24.2.40 of [2] and
DFSC[5:0] bit (stands for Data Fault Status Code).

[1]: Synchronous External abort on translation table walk, level -2
[2]: Arm Architecture Reference Manual, for A-profile architecture

Signed-off-by: Leesoo Ahn <lsahn at ooseel.net>
---
 arch/arm64/mm/fault.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c
index ef63651099a9..b1c08289a5cc 100644
--- a/arch/arm64/mm/fault.c
+++ b/arch/arm64/mm/fault.c
@@ -863,7 +863,7 @@ static const struct fault_info fault_info[] = {
 	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"level 3 permission fault"	},
 	{ do_sea,		SIGBUS,  BUS_OBJERR,	"synchronous external abort"	},
 	{ do_tag_check_fault,	SIGSEGV, SEGV_MTESERR,	"synchronous tag check fault"	},
-	{ do_bad,		SIGKILL, SI_KERNEL,	"unknown 18"			},
+	{ do_sea,		SIGKILL, SI_KERNEL,	"level -2 (translation table walk)"	},
 	{ do_sea,		SIGKILL, SI_KERNEL,	"level -1 (translation table walk)"	},
 	{ do_sea,		SIGKILL, SI_KERNEL,	"level 0 (translation table walk)"	},
 	{ do_sea,		SIGKILL, SI_KERNEL,	"level 1 (translation table walk)"	},
-- 
2.46.1




More information about the linux-arm-kernel mailing list