memtest (arm64) throws level 2/3 translation fault

From: Pandey, Radhey Shyam
Date: Sun Oct 09 2022 - 12:54:57 EST


Hi folks,

I am seeing memtest(mm/memtest.c) reported failure "level 2/3 translation
fault " on a particular Xilinx-AMD Versal ACAP internal development board.

However, i can access same memory range (ported memtest) properly in
a standalone(baremetal software stack/ no-OS).

I copied below linux boot log for reference. Please let me know any
suggestion/experiments to rootcause this issue further.


Starting kernel ...

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd083]
[ 0.000000] Linux version 6.0.0-rc6-01408-gedce21691e3e (-)
(aarch64-xilinx-linux-gcc.real (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.0.20200730)
#58 SMP PREEMPT Sun Oct 9 21:49:47 IST 2022
[ 0.000000] Machine model: Xilinx Versal internal Eval board revA
[ 0.000000] earlycon: pl11 at MMIO32 0x00000000ff000000 (options '115200n8')
[ 0.000000] printk: bootconsole [pl11] enabled
[ 0.000000] efi: UEFI not found.
[ 0.000000] early_memtest: # of tests: 1
[ 0.000000] 0x0000000000000000 - 0x0000000000210000 pattern 0000000000000000
[ 0.000000] 0x00000000025de000 - 0x00000000025e3000 pattern 0000000000000000
[ 0.000000] 0x00000000025f0000 - 0x0000000074b79000 pattern 0000000000000000
[ 0.000000] 0x0000000074b7f080 - 0x0000000074b82000 pattern 0000000000000000
[ 0.000000] 0x000000007deca000 - 0x0000000080000000 pattern 0000000000000000
[ 0.000000] Unable to handle kernel paging request at virtual address ffff00007fc10000
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000047
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x07: level 3 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000047
[ 0.000000] CM = 0, WnR = 1
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff00007fc10000] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8008
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8008] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Unable to handle kernel paging request at virtual address ffff0008ffff8118
[ 0.000000] Mem abort info:
[ 0.000000] ESR = 0x0000000096000006
[ 0.000000] EC = 0x25: DABT (current EL), IL = 32 bits
[ 0.000000] SET = 0, FnV = 0
[ 0.000000] EA = 0, S1PTW = 0
[ 0.000000] FSC = 0x06: level 2 translation fault
[ 0.000000] Data abort info:
[ 0.000000] ISV = 0, ISS = 0x00000006
[ 0.000000] CM = 0, WnR = 0
[ 0.000000] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000001aca000
[ 0.000000] [ffff0008ffff8118] pgd=18000008ffff8003, p4d=18000008ffff8003
[ 0.000000] Insufficient stack space to handle exception!
[ 0.000000] ESR: 0x0000000096000006 -- DABT (current EL)
[ 0.000000] FAR: 0xffff0008ffff8118
[ 0.000000] Task stack: [0xffff800009fd0000..0xffff800009fd4000]
[ 0.000000] IRQ stack: [0x0000000000000000..0x0000000000004000]
[ 0.000000] Overflow stack: [0xffff800009a38300..0xffff800009a39300]
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 6.0.0-rc6-01408-gedce21691e3e #58
[ 0.000000] Hardware name: Xilinx Versal internal180 Eval board revA (DT)
[ 0.000000] pstate: 400000c5 (nZcv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 0.000000] pc : die_kernel_fault+0x2b0/0x358
[ 0.000000] lr : die_kernel_fault+0x244/0x358
[ 0.000000] sp : ffff800009fd0110
[ 0.000000] x29: ffff800009fd0110 x28: ffff800009fe3c40 x27: ffff80000a06ed50
[ 0.000000] x26: ffff80000a06e000 x25: ffff800009818000 x24: ffff8000098ca000
[ 0.000000] x23: 0000000000000118 x22: ffff0008ffff8000 x21: ffff800009fd0220
[ 0.000000] x20: ffff0008ffff8118 x19: 0000000096000006 x18: 0000000000000030
[ 0.000000] x17: 3030666666662073 x16: 736572646461206c x15: ffff800009fe40f8
[ 0.000000] x14: ffff800009ff2f50 x13: 00000000000003a5 x12: 0000000000000137
[ 0.000000] x11: fffffffffffe3cb8 x10: fffffffffffe3c70 x9 : 00000000fffff137
[ 0.000000] x8 : ffff800009ff2f50 x7 : ffff80000a04af50 x6 : 0000000000000e94
[ 0.000000] x5 : 000000000000bff4 x4 : 00000000fffff137 x3 : 00000000ffffefff
[ 0.000000] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff800009683a80
[ 0.000000] Kernel panic - not syncing: kernel stack overflow

Thanks,
Radhey