Skip to content

Instantly share code, notes, and snippets.

@lupyuen
Last active December 30, 2021 01:49
Show Gist options
  • Select an option

  • Save lupyuen/ccfd90125f9a180b4cfb459e8a57b323 to your computer and use it in GitHub Desktop.

Select an option

Save lupyuen/ccfd90125f9a180b4cfb459e8a57b323 to your computer and use it in GitHub Desktop.
up_assert: Assertion failed at file:irq/irq_unexpectedisr.c line: 51 task: init
riscv_registerdump: EPC:230311d2
riscv_registerdump: A0:42017f10 A1:00000000 A2:800180f0 A3:000180e0 A4:00000000 A5:00000001 A6:00000000 A7:00000009
riscv_registerdump: T0:000001ff T1:23003652 T2:0000002d T3:00000068 T4:00000009 T5:0000002a T6:0000002e
riscv_registerdump: S0:42017cf0 S1:42017f10 S2:00000000 S3:2303dbcc S4:00000000 S5:00000000 S6:00000000 S7:00000000
riscv_registerdump: S8:00000000 S9:00000000 S10:00000000 S11:00000000
riscv_registerdump: SP:42017cc0 FP:42017cf0 TP:00000000 A:230311c4
riscv_dumpstate: sp: 42014900
riscv_dumpstate: IRQ stack:
riscv_dumpstate: base: 42012990
riscv_dumpstate: size: 00002000
riscv_stackdump: 42014900: deadbeef deadbeef 23034800 00000033 deadbeef 00000000 00000000 00000000
riscv_stackdump: 42014920: 00000000 00000000 420128d0 00000005 42017bb8 42013000 42014950 23003fc0
riscv_stackdump: 42014940: deadbeef deadbeef 42014960 23001d1e 42012758 42013000 42014970 23001cd8
riscv_stackdump: 42014960: deadbeef deadbeef 42014990 23000d40 deadbeef deadbeef 00000000 2303dbcc
riscv_stackdump: 42014980: 00000000 42017f10 230311d2 23000c62 00000000 00000000 00000000 00000000
riscv_dumpstate: sp: 2014990
riscv_dumpstate: User stack:
riscv_dumpstate: base: 42015d90
riscv_dumpstate: size: 00001fe0
riscv_dumpstate: ERROR: Stack pointer is not within allocated stack
riscv_stackdump: 42015d80: 42015d88 00000000 74696e69 00000000 deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015da0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015dc0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015de0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015e00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015e20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015e40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015e60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015e80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015ea0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015ec0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015ee0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015f00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015f20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015f40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015f60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015f80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015fa0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015fc0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42015fe0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016000: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016020: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016040: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016060: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016080: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420160a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420160c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420160e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016100: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016120: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016140: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016160: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016180: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420161a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420161c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420161e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016200: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016220: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016240: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016260: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016280: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420162a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420162c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420162e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016300: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016320: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016340: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016360: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016380: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420163a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420163c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420163e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016400: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016420: deadbeef deadbeef deadbeef deadeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016440: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeefdeadbeef
riscv_stackdump: 42016460: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016480: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420164a0: deadbeef deadbeef eadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420164c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420164e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016500: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016520: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016540: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016560: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016580: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420165a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420165c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420165e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016600: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016620: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016640: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016660: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016680: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420166a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420166c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420166e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016700: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016720: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016740: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016760: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016780: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420167a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420167c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420167e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016800: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016820: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016840: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016860: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016880: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420168a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420168c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420168e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016900: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016920: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016940: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016960: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016980: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420169a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420169c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420169e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016a00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016a20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016a40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016a60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016a80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016aa0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ac0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ae0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016b00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016b20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016b40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016b60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016b80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ba0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016bc0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016be0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016c00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016c20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016c40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016c60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016c80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ca0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016cc0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ce0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016d00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016d20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016d40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016d60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016d80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016da0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016dc0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016de0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016e00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016e20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016e40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016e60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016e80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ea0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ec0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016ee0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016f00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016f20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016f40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016f60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016f80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016fa0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016fc0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42016fe0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017000: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017020: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017040: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017060: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017080: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420170a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420170c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420170e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017100: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017120: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017140: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017160: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017180: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420171a0: deadbeef deadbeef dadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420171c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420171e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017200: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017220: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017240: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017260: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017280: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420172a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420172c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420172e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017300: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017320: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017340: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017360: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017380: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420173a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420173c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420173e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017400: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017420: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017440: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017460: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017480: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420174a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420174c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420174e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017500: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017520: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017540: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017560: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017580: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump 420175a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420175c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420175e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017600: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017620: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017640: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017660: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017680: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420176a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420176c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420176e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017700: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017720: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017740: deadbeef deadbeef deadbeef deadbef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017760: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017780: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420177a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420177c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420177e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017800: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017820: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017840: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017860: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017880: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420178a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420178c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420178e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017900: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017920: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017940: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017960: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 4201980: deadbeef deadbeef deadbeef eadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420179a0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420179c0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 420179e0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017a00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017a20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017a40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017a60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017a80: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017aa0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017ac0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017ae0: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017b00: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017b20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017b40: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017b60: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef
riscv_stackdump: 42017b80: deadbeef deadbeef deadbeef deadbeef 00000030 42015540 42017bb0 42017bc0
riscv_stackdump: 42017ba0: 00000030 42015540 42017bc0 42017bd0 deadbeef 42017ea0 230311d2 230311c4
riscv_stackdump: 42017bc0: 42017cc0 00000000 00000000 000001ff 23003652 0000002d 42017cf0 42017f10
riscv_stackdump: 42017be0: 42017f10 00000000 800180f0 000180e0 00000000 00000001 00000000 00000009
riscv_stackdump: 42017c00: 00000000 2303dbcc 00000000 00000000 00000000 00000000 00000000 00000000
riscv_stackdump: 42017c20: 00000000 00000000 00000068 00000009 0000002a 0000002e 80007880 23007742
riscv_stackdump: 42017c40: 00000000 42017cd9 00000000 42015970 42015940 00000000 00000000 23009300
riscv_stackdump: 42017c60: 00000001 00000000 00000000 42017cd4 00000010 42015540 42017c90 42017ca0
riscv_stackdump: 42017c80: 2300ab06 42017f10 42017ca0 23002f66 00000000 42017f10 42017cc0 230048f4
riscv_stackdump: 42017ca0: 23036ac0 42010530 00000000 2303dbcc 00000000 00000000 42017cf0 230311c4
riscv_stackdump: 42017cc0: ffffffff ffffffff ffffffff 00000000 23035000 7665642f 6970732f 00000000
riscv_stackdump: 42017ce0: 00000000 00000000 42017d00 230295a4 42015d80 00000001 42017d10 230294d0
riscv_stackdump: 42017d00: 42015d80 00000001 42017d20 2300a428 deadbeef 00000001 42017d50 23005246
riscv_stackdump: 42017d20: deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef deadbeef 00000064
riscv_stackdump: 42017d40: 00000000 00000000 42017d60 230040ee deadbeef deadbeef 42017d70 23002364
riscv_stackdump: 42017d60: deadbeef deadbeef 00000000 00000000 7c9bac61 e094bab1 00000030 80002020
riscv_taskdump: Idle Task: PID=0 Stack Used=404 of 8160
riscv_registerdump: EPC:230051d6
riscv_registerdump: A0:00000002 A1:42014b00 A2:42015af0 A3:42014eec A4:42015a80 A5:00000014 A6:00000002 A7:00000003
riscv_registerdump: T0:00006000 T1:23004f28 T2:41bd1588 T3:00000037 T4:00000000 T5:00000000 T6:c48af7e4
riscv_registerdump: S0:42012880 S1:42014a90 S2:80007808 S3:42014ecc S4:42015000 S5:00000001 S6:4202137c S7:23007000
riscv_registerdump: S8:4201fa38 S9:00000001 S10:00000bb0 S11:420108d0
riscv_registerdump: SP:42012860 FP:42012880 TP:005552e5 RA:23001de0
riscv_taskdump: init: PID=1 Stack Used=480 of 8160
riscv_registerdump: EPC:23002310
riscv_registerdump: A0:00000000 A1:00000000 A2:00000000 A3:00000000 A4:00000000 A5:00000000 A6:00000000 A7:00000000
riscv_registerdump: T0:00000000 T1:00000000 T2:00000000 T3:00000000 T4:00000000 T5:00000000 T6:00000000
riscv_registerdump: S0:00000000 S1:00000000 S2:00000000 S3:00000000 S4:00000000 S5:00000000 S6:00000000 S7:00000000
riscv_registerdump: S8:00000000 S9:00000000 S10:00000000 S11:00000000
riscv_registerdump: SP:42017d70 FP:00000000 TP:00000000 RA:00000000
@normanr
Copy link
Copy Markdown

normanr commented Dec 28, 2021

Is there an easy way to "symbolize" these? Looking at the top stackdump there are clearly code and data addresses. https://cwiki.apache.org/confluence/display/NUTTX/Analyzing+Cortex-M+Hardfaults is useful for understanding how to read the output, and there seems to be a script at nuttx/tools/parsecallstack.py, but it seems to generate output for a non-opensource tool (Trace32).

@normanr
Copy link
Copy Markdown

normanr commented Dec 28, 2021

So I found gdb's disass most helpful, but it still requires going through the stack one frame at a time.

@lupyuen
Copy link
Copy Markdown
Author

lupyuen commented Dec 29, 2021

Thanks for the tip! I'm new to NuttX, and disass looks really helpful :-)

@normanr
Copy link
Copy Markdown

normanr commented Dec 29, 2021

Also I found a reference to the RISC-V Exception Codes here: https://five-embeddev.com/riscv-isa-manual/latest/machine.html#sec:mcause

eg: irq_unexpected_isr: ERROR irq: 6 is Store/AMO address misaligned, which I fixed with apache/nuttx#5090

@normanr
Copy link
Copy Markdown

normanr commented Dec 29, 2021

ooh, and I found nuttx/tools/esp32/btdecode.sh which with a bit of tweaking (and some new backtrace support that got pushed in the last day) it can look very nice:

[  321.000000] up_assert: Assertion failed at file:serial/serial_io.c line: 251 task: Idle Task
[  321.000000] backtrace| 0: 0x2301f190 0x23000d40 0x42011868 0x00000960 0x00000001 0x420118c0 0x2301cb66 0x00000003
[  321.000000] backtrace| 0: 0x23007574 0x0000002b 0x00000002 0x4000a000
[  321.000000] riscv_registerdump: EPC:23007574

becomes:

[  321.000000] up_assert: Assertion failed at file:serial/serial_io.c line: 251 task: Idle Task
[  321.000000] backtrace| 0:
0x2301f190: sched_dumpstack at sched_dumpstack.c:69
0x23000d40: bl602_dispatch_irq at bl602_irq_dispatch.c:101
0x42011868: __bss_start at ??:?
0x00000960: ?? ??:0
0x00000001: ?? ??:0
0x420118c0: __bss_start at ??:?
0x2301cb66: nx_vsyslog at vsyslog.c:231
0x00000003: ?? ??:0
0x23007574: up_idle at bl602_idle.c:67
0x0000002b: ?? ??:0
0x00000002: ?? ??:0
0x4000a000: ?? ??:0
[  321.000000] riscv_registerdump: EPC:23007574

with:

# Decode backtrace
thread=
while read -r bt; do
  if [[ ! ${bt} =~ .*backtrace.* ]]; then
    echo "${bt}"
    thread=
    continue
  fi
  if [[ "${thread}" != "${bt%%:*}" ]]; then
    thread="${bt%%:*}" 
    echo "${thread}:"
  fi
  riscv64-unknown-elf-addr2line -pfiaCs -e nuttx ${bt#*:}
done < $1

@lupyuen
Copy link
Copy Markdown
Author

lupyuen commented Dec 30, 2021

Very cool thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment