synchronous external abort

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

synchronous external abort

6,148 Views
nithindas
Contributor I

I have a LS1088A processor connected to a PCIe module. When I try to reset the PCIe module, the system hangs with the following error. 

Any pointers to aid debugging would be really helpful. Thank you.

[ 98.773608] Unhandled fault: synchronous external abort (0x96000210) at 0xfff
f000009642068
[ 98.781891] Internal error: : 96000210 [#1] PREEMPT SMP
[ 98.795952] CPU: 0 PID: 1460 Comm: kworker/0:1 Tainted: G O 4.9.
124 #3
[ 98.803619] Hardware name: L1088A CU Board (DT)
[ 98.808160] Workqueue: events aer_isr
[ 98.811828] task: ffff80805a81c200 task.stack: ffff80803a3a0000
[ 98.817760] PC is at dw_pcie_cfg_read.part.0+0x40/0x70
[ 98.822906] LR is at dw_pcie_rd_conf+0x194/0x1b0
[ 98.827528] pc : [<ffff0000085e8398>] lr : [<ffff0000085e926c>] pstate: 60000
1c5
[ 98.834933] sp : ffff80803a3a3bb0
[ 98.838248] x29: ffff80803a3a3bb0 x28: ffff80803a764f48
[ 98.843574] x27: 0000000000000000 x26: 0000000000000068
[ 98.848900] x25: 0000000000000002 x24: 0000000000000000
[ 98.854226] x23: ffff80803a3a3c4c x22: 0000000000000000
[ 98.859551] x21: 0000000000000000 x20: ffff000009642000
[ 98.864877] x19: ffff80803a74f818 x18: 0000000000000030
[ 98.870203] x17: 0000000000000001 x16: 0000000000000019
[ 98.875528] x15: 0000000000000004 x14: 0000000000000000
[ 98.880854] x13: 0000000000000004 x12: 000000000000023d
[ 98.886179] x11: 0000000000000006 x10: 000000000000023d
[ 98.891505] x9 : 0000000000000001 x8 : ffff0000093e8778
[ 98.896830] x7 : 0000000000000004 x6 : 0000000000000000
[ 98.902156] x5 : 0000000000001000 x4 : 0000000001000000
[ 98.907481] x3 : 0000000000000000 x2 : ffff80803a3a3c4c
[ 98.912806] x1 : 0000000000000002 x0 : ffff000009642068
[ 98.918131]
[ 98.919619] Process kworker/0:1 (pid: 1460, stack limit = 0xffff80803a3a0000)
[ 98.926765] Stack: (0xffff80803a3a3bb0 to 0xffff80803a3a4000)
[ 98.932519] 3ba0: ffff80803a3a3c00 ffff0000
085c55c4
[ 98.940362] 3bc0: 0000000000000068 ffff80803a75d000 ffff80803a3a3ca6 00000000
00000000
[ 98.948206] 3be0: ffff00000942e480 0000000000000140 ffff80803a764f98 00000000
00000002
[ 98.956050] 3c00: ffff80803a3a3c50 ffff0000085c6c1c ffff80803a3a3ca6 ffff8080
5aa36000
[ 98.963894] 3c20: ffff80803a764f48 ffff0000085e1648 ffff80803a75d000 ffff0000
0932d000
[ 98.971737] 3c40: ffff00000942e480 0000000000000140 ffff80803a3a3c70 ffff0000
085e16c0
[ 98.979581] 3c60: ffff80803a764f48 ffff0000085e177c ffff80803a3a3cb0 ffff0000
085c7070
[ 98.987425] 3c80: ffff80803a75d000 ffff80803a75d028 ffff80803a764f48 ffff0000
085c7048
[ 98.995269] 3ca0: 000080803a75d000 000060003a3a3cb0 ffff80803a3a3cf0 ffff0000
085e17c4
[ 99.003112] 3cc0: ffff80803a764f48 ffff80805aff1000 0000000008000003 00000000
00000000
[ 99.010956] 3ce0: ffff80803a75b000 ffff80803a764c00 ffff80803a3a3d10 ffff0000
085e1c0c
[ 99.018800] 3d00: 0000000000000000 ffff80803a764c00 ffff80803a3a3d80 ffff0000
080dc25c

0 Kudos
1 Reply

4,408 Views
bpe
NXP Employee
NXP Employee

The error you are observing is a normal reaction of the system to
a failed read access. After you reset your PCIe device, it stops
behaving in the way the system expects, which causes this message
to appear. Moe details on external aborts can be found in Section
D3.5 of ARMv8 Architecture Reference Manual (ARM DDI 0487A)
Basically, it is a bad idea to reset a device which
has been in use by the system, unless the driver for the device implements
a legal way to do it.