Closed emaste closed 7 years ago
arm64 at r282827 in QEMU
root@:~ # panic: bad stray interrupt KDB: stack backtrace: db_trace_self() at db_trace_self_wrapper+0x28 pc = 0xffffff800037fdd8 lr = 0xffffff800001730c sp = 0xffffff809cf296a0 fp = 0xffffff809cf297c0
db_trace_self_wrapper() at vpanic+0xa4 pc = 0xffffff800001730c lr = 0xffffff800013ca98 sp = 0xffffff809cf297d0 fp = 0xffffff809cf29840
vpanic() at kassert_panic+0x144 pc = 0xffffff800013ca98 lr = 0xffffff800013c9f0 sp = 0xffffff809cf29850 fp = 0xffffff809cf29920
kassert_panic() at intr_event_handle+0x108 pc = 0xffffff800013c9f0 lr = 0xffffff800010f3e0 sp = 0xffffff809cf29930 fp = 0xffffff809cf29980
intr_event_handle() at arm_dispatch_intr+0x58 pc = 0xffffff800010f3e0 lr = 0xffffff8000383208 sp = 0xffffff809cf29990 fp = 0xffffff809cf299b0
arm_dispatch_intr() at gic_dispatch+0x2c pc = 0xffffff8000383208 lr = 0xffffff80003822ec sp = 0xffffff809cf299c0 fp = 0xffffff809cf299e0
gic_dispatch() at arm_cpu_intr+0x60 pc = 0xffffff80003822ec lr = 0xffffff8000383320 sp = 0xffffff809cf299f0 fp = 0xffffff809cf29a00
arm_cpu_intr() at handle_el1h_irq+0x58 pc = 0xffffff8000383320 lr = 0xffffff8000381108 sp = 0xffffff809cf29a10 fp = 0xffffff809cf29b30
handle_el1h_irq() at sched_idletd+0x120 pc = 0xffffff8000381108 lr = 0xffffff8000162b6c sp = 0xffffff809cf29b40 fp = 0xffffff809cf29b70
sched_idletd() at fork_exit+0x7c pc = 0xffffff8000162b6c lr = 0xffffff800010c8c8 sp = 0xffffff809cf29b80 fp = 0xffffff809cf29bb0
fork_exit() at fork_trampoline+0x10 pc = 0xffffff800010c8c8 lr = 0xffffff800038a65c sp = 0xffffff809cf29bc0 fp = 0x0000000000000000
KDB: enter: panic
It looks like we are getting an interrupt when there is no handler. How reproducible it is?
So far I've only seen it once
Presumed OBE
arm64 at r282827 in QEMU
root@:~ # panic: bad stray interrupt KDB: stack backtrace: db_trace_self() at db_trace_self_wrapper+0x28 pc = 0xffffff800037fdd8 lr = 0xffffff800001730c sp = 0xffffff809cf296a0 fp = 0xffffff809cf297c0
db_trace_self_wrapper() at vpanic+0xa4 pc = 0xffffff800001730c lr = 0xffffff800013ca98 sp = 0xffffff809cf297d0 fp = 0xffffff809cf29840
vpanic() at kassert_panic+0x144 pc = 0xffffff800013ca98 lr = 0xffffff800013c9f0 sp = 0xffffff809cf29850 fp = 0xffffff809cf29920
kassert_panic() at intr_event_handle+0x108 pc = 0xffffff800013c9f0 lr = 0xffffff800010f3e0 sp = 0xffffff809cf29930 fp = 0xffffff809cf29980
intr_event_handle() at arm_dispatch_intr+0x58 pc = 0xffffff800010f3e0 lr = 0xffffff8000383208 sp = 0xffffff809cf29990 fp = 0xffffff809cf299b0
arm_dispatch_intr() at gic_dispatch+0x2c pc = 0xffffff8000383208 lr = 0xffffff80003822ec sp = 0xffffff809cf299c0 fp = 0xffffff809cf299e0
gic_dispatch() at arm_cpu_intr+0x60 pc = 0xffffff80003822ec lr = 0xffffff8000383320 sp = 0xffffff809cf299f0 fp = 0xffffff809cf29a00
arm_cpu_intr() at handle_el1h_irq+0x58 pc = 0xffffff8000383320 lr = 0xffffff8000381108 sp = 0xffffff809cf29a10 fp = 0xffffff809cf29b30
handle_el1h_irq() at sched_idletd+0x120 pc = 0xffffff8000381108 lr = 0xffffff8000162b6c sp = 0xffffff809cf29b40 fp = 0xffffff809cf29b70
sched_idletd() at fork_exit+0x7c pc = 0xffffff8000162b6c lr = 0xffffff800010c8c8 sp = 0xffffff809cf29b80 fp = 0xffffff809cf29bb0
fork_exit() at fork_trampoline+0x10 pc = 0xffffff800010c8c8 lr = 0xffffff800038a65c sp = 0xffffff809cf29bc0 fp = 0x0000000000000000
KDB: enter: panic