• Miles Chen's avatar
    arm64: mm: print hexadecimal EC value in mem_abort_decode() · 2951d5ef
    Miles Chen authored
    This change prints the hexadecimal EC value in mem_abort_decode(),
    which makes it easier to lookup the corresponding EC in
    the ARM Architecture Reference Manual.
    
    The commit 1f9b8936 ("arm64: Decode information from ESR upon mem
    faults") prints useful information when memory abort occurs. It would
    be easier to lookup "0x25" instead of "DABT" in the document. Then we
    can check the corresponding ISS.
    
    For example:
    Current	info	  	Document
    		  	EC	Exception class
    "CP15 MCR/MRC"		0x3	"MCR or MRC access to CP15a..."
    "ASIMD"			0x7	"Access to SIMD or floating-point..."
    "DABT (current EL)" 	0x25	"Data Abort taken without..."
    ...
    
    Before:
    Unable to handle kernel paging request at virtual address 000000000000c000
    Mem abort info:
      ESR = 0x96000046
      Exception class = DABT (current EL), IL = 32 bits
      SET = 0, FnV = 0
      EA = 0, S1PTW = 0
    Data abort info:
      ISV = 0, ISS = 0x00000046
      CM = 0, WnR = 1
    
    After:
    Unable to handle kernel paging request at virtual address 000000000000c000
    Mem abort info:
      ESR = 0x96000046
      EC = 0x25: DABT (current EL), IL = 32 bits
      SET = 0, FnV = 0
      EA = 0, S1PTW = 0
    Data abort info:
      ISV = 0, ISS = 0x00000046
      CM = 0, WnR = 1
    
    Cc: Anshuman Khandual <anshuman.khandual@arm.com>
    Cc: James Morse <james.morse@arm.com>
    Acked-by: default avatarMark Rutland <Mark.rutland@arm.com>
    Signed-off-by: default avatarMiles Chen <miles.chen@mediatek.com>
    Signed-off-by: default avatarWill Deacon <will@kernel.org>
    2951d5ef
fault.c 25.2 KB