Skip to content

Commit b60d126

Browse files
committed
s390/mm: Let dump_fault_info() print additional information
Let dump_fault_info() print additional information to make debugging easier: Print "FSI" if the access-exception-fetch/store-indication facility is installed. If it is installed the TEID may also indicate if an exception happened because of a fetch or a store operation. Print "SOP", "ESOP-1", or "ESOP-2" depending on the type of the installed Suppression-on-Protection facility. This also gives additional information about the validity and meaning of the TEID bits. The output is changed from something like: Failing address: 0000000000000000 TEID: 0000000000000803 to Failing address: 0000000000000000 TEID: 0000000000000803 ESOP-2 FSI Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
1 parent 76502ab commit b60d126

1 file changed

Lines changed: 10 additions & 1 deletion

File tree

arch/s390/mm/fault.c

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,17 @@ static void dump_fault_info(struct pt_regs *regs)
133133
union teid teid = { .val = regs->int_parm_long };
134134
unsigned long asce;
135135

136-
pr_alert("Failing address: %016lx TEID: %016lx\n",
136+
pr_alert("Failing address: %016lx TEID: %016lx",
137137
get_fault_address(regs), teid.val);
138+
if (test_facility(131))
139+
pr_cont(" ESOP-2");
140+
else if (machine_has_esop())
141+
pr_cont(" ESOP-1");
142+
else
143+
pr_cont(" SOP");
144+
if (test_facility(75))
145+
pr_cont(" FSI");
146+
pr_cont("\n");
138147
pr_alert("Fault in ");
139148
switch (teid.as) {
140149
case PSW_BITS_AS_HOME:

0 commit comments

Comments
 (0)