Skip to content

Instantly share code, notes, and snippets.

@stffrdhrn
Created April 12, 2016 13:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stffrdhrn/87c9c484f9e127f0c360ea30daa5aa68 to your computer and use it in GitHub Desktop.
Save stffrdhrn/87c9c484f9e127f0c360ea30daa5aa68 to your computer and use it in GitHub Desktop.
This stack trace has been annotated with perl script found at:
https://github.com/stffrdhrn/linux/blob/openrisc/scripts/annotate-stracktrace.pl
From the stack trace below (and using objdump to look at dissasembly of vmlinux)
we can see that the crash happened in:
Function:
update_ts_time_stats(int cpu, struct tick_sched *ts, ktime_t now, u64 *last_update_time)
With args:
cpu GPR03: 00000000
tick_sched optimized out
now GPR04: c02efe5c (0x0000da03 57a25cf8) or 239707.890015480 seconds
last_update_time GPR05: 00000000
We can tell function because R9 is c006419c, looking at objdump we can see that
location is the retun address for the call to update_ts_time_stats() in
tick_irq_enter().
The args we can tell are r3, r4 and r5 because
a. those are normally the arg registers
b. looking at dissasembly of update_ts_time_stats we can see where it picks up
the arguments from
[239707.650000] Unable to handle kernel access at virtual address 0xbffe2ce0 0x00000000
[239707.650000]
[239707.650000] Oops#: 0000
[239707.650000] CPU #: 0
[239707.650000] PC: bffe2ce0 SR: 00008079 SP: c02efe54
[239707.650000] GPR00: 00000000 GPR01: c02efe54 GPR02: c02fb27c GPR03: 00000000
[239707.650000] GPR04: c02efe5c GPR05: 00000000 GPR06: a0000000 GPR07: c0000000
[239707.650000] GPR08: 00726000 GPR09: c006419c GPR10: c02ee000 GPR11: c02efe5c R9 return tick_irq_enter()+236
[239707.650000] GPR12: c0000000 GPR13: 0000a000 GPR14: 00000000 GPR15: 00000000
[239707.650000] GPR16: 00000000 GPR17: 016d4e81 GPR18: c0303096 GPR19: 00000000
[239707.650000] GPR20: c0303096 GPR21: 0000025f GPR22: 00000000 GPR23: 00058610
[239707.650000] GPR24: c02ee000 GPR25: 00000000 GPR26: 00000006 GPR27: 00000000
[239707.650000] GPR28: 00000000 GPR29: c02f0000 GPR30: ffffffff GPR31: cd998d17
[239707.650000] RES: c02efe5c oGPR11: ffffffff
[239707.650000] Process swapper (pid: 0, stackpage=c02f62d0)
[239707.650000]
Stack: Stack dump [0xc02efd48]:
[239707.650000] sp + 00: 0xc02efe54 0xc02efd48 init_thread_union+7764 (stackdepth 428)
[239707.650000] sp + 04: 0xc02fb27c 0xc02efd4c tick_cpu_sched
[239707.650000] sp + 08: 0x00000000 0xc02efd50
[239707.650000] sp + 12: 0xc02efe5c 0xc02efd54 init_thread_union+7772 (stackdepth 420)
[239707.650000] sp + 16: 0x00000000 0xc02efd58
[239707.650000] sp + 20: 0xa0000000 0xc02efd5c
[239707.650000] sp + 24: 0xc0000000 0xc02efd60 _stext()
[239707.650000] sp + 28: 0x00726000 0xc02efd64
[239707.650000] sp + 32: 0xc006419c 0xc02efd68 tick_irq_enter()+236
[239707.650000] sp + 36: 0xc02ee000 0xc02efd6c init_thread_union
[239707.650000] sp + 40: 0xc02efe5c 0xc02efd70 init_thread_union+7772 (stackdepth 420)
[239707.650000] sp + 44: 0xc0000000 0xc02efd74 _stext()
[239707.650000] sp + 48: 0x0000a000 0xc02efd78
[239707.650000] sp + 52: 0x00000000 0xc02efd7c
[239707.650000] sp + 56: 0x00000000 0xc02efd80
[239707.650000] sp + 60: 0x00000000 0xc02efd84
[239707.650000] sp + 64: 0x016d4e81 0xc02efd88
[239707.650000] sp + 68: 0xc0303096 0xc02efd8c __warned.28644
[239707.650000] sp + 72: 0x00000000 0xc02efd90
[239707.650000] sp + 76: 0xc0303096 0xc02efd94 __warned.28644
[239707.650000] sp + 80: 0x0000025f 0xc02efd98
[239707.650000] sp + 84: 0x00000000 0xc02efd9c
[239707.650000] sp + 88: 0x00058610 0xc02efda0
[239707.650000] sp + 92: 0xc02ee000 0xc02efda4 init_thread_union
[239707.650000] sp + 96: 0x00000000 0xc02efda8
[239707.650000] sp + 100: 0x00000006 0xc02efdac
[239707.650000] sp + 104: 0x00000000 0xc02efdb0
[239707.650000] sp + 108: 0x00000000 0xc02efdb4
[239707.650000] sp + 112: 0xc02f0000 0xc02efdb8 tasklist_lock
[239707.650000] sp + 116: 0xffffffff 0xc02efdbc
[239707.650000] sp + 120: 0xcd998d17 0xc02efdc0
[239707.650000] sp + 124: 0xbffe2ce0 0xc02efdc4
[239707.650000] sp + 128: 0xffffffff 0xc02efdc8
[239707.650000] sp + 132: 0xc02f6ca0 0xc02efdcc clockevent_openrisc_timer
[239707.650000] sp + 136: 0x0000da03 0xc02efdd0
[239707.650000] sp + 140: 0x00000000 0xc02efdd4
[239707.650000] sp + 144: 0x57a22080 0xc02efdd8
[239707.650000] sp + 148: 0x00000001 0xc02efddc
[239707.650000] sp + 152: 0xc02f6ca0 0xc02efde0 clockevent_openrisc_timer
[239707.650000] sp + 156: 0x00000001 0xc02efde4
[239707.650000] sp + 160: 0xc02efdf0 0xc02efde8 init_thread_union+7664 (stackdepth 528)
[239707.650000] sp + 164: 0xc02f6ca0 0xc02efdec clockevent_openrisc_timer
[239707.650000] sp + 168: 0xc0303096 0xc02efdf0 __warned.28644
[239707.650000] sp + 172: 0x0000da03 0xc02efdf4
[239707.650000] sp + 176: 0x495855e4 0xc02efdf8
[239707.650000] sp + 180: 0xc02efe18 0xc02efdfc init_thread_union+7704 (stackdepth 488)
[239707.650000] sp + 184: 0x00000001 0xc02efe00
[239707.650000] sp + 188: 0xc02f6ca0 0xc02efe04 clockevent_openrisc_timer
[239707.650000] sp + 192: 0x0000da03 0xc02efe08
[239707.650000] sp + 196: 0x57a22080 0xc02efe0c
[239707.650000] sp + 200: 0xc02fb27c 0xc02efe10 tick_cpu_sched
[239707.650000] sp + 204: 0xc0062738 0xc02efe14 tick_program_event()+116
[239707.650000] sp + 208: 0x0000da03 0xc02efe18
[239707.650000] sp + 212: 0x57a22080 0xc02efe1c
[239707.650000] sp + 216: 0xc02efe38 0xc02efe20 init_thread_union+7736 (stackdepth 456)
[239707.650000] sp + 220: 0xc02efe2c 0xc02efe24 init_thread_union+7724 (stackdepth 468)
[239707.650000] sp + 224: 0x00b71e06 0xc02efe28
[239707.650000] sp + 228: 0xc02efe54 0xc02efe2c init_thread_union+7764 (stackdepth 428)
[239707.650000] sp + 232: 0xc02fb27c 0xc02efe30 tick_cpu_sched
[239707.650000] sp + 236: 0x00000000 0xc02efe34
[239707.650000] sp + 240: 0xc0303096 0xc02efe38 __warned.28644
[239707.650000] sp + 244: 0xc0303096 0xc02efe3c __warned.28644
[239707.650000] sp + 248: 0x00000000 0xc02efe40
[239707.650000] sp + 252: 0xc02ee000 0xc02efe44 init_thread_union
[239707.650000] sp + 256: 0x00000006 0xc02efe48
[239707.650000] sp + 260: 0x00000000 0xc02efe4c
[239707.650000] sp + 264: 0xc0064100 0xc02efe50 tick_irq_enter()+80
[239707.650000] sp + 268: 0x0000da03 0xc02efe54 ~~~~iCRASH TOP!~~~~
[239707.650000] sp + 272: 0x57a25cf8 0xc02efe58
[239707.650000] sp + 276: 0x0000da03 0xc02efe5c
[239707.650000] sp + 280: 0x57a25cf8 0xc02efe60
[239707.650000] sp + 284: 0xc02efe70 0xc02efe64 init_thread_union+7792 (stackdepth 400)
[239707.650000] sp + 288: 0x00010000 0xc02efe68
[239707.650000] sp + 292: 0xc000e8bc 0xc02efe6c irq_enter()+108
[239707.650000] sp + 296: 0xc02efe7c 0xc02efe70 init_thread_union+7804 (stackdepth 388)
[239707.650000] sp + 300: 0xc02fcb2c 0xc02efe74 __irq_regs
[239707.650000] sp + 304: 0xc0004da0 0xc02efe78 timer_interrupt()+52
[239707.650000] sp + 308: 0xc02efe8c 0xc02efe7c init_thread_union+7820 (stackdepth 372)
[239707.650000] sp + 312: 0xc02ee000 0xc02efe80 init_thread_union
[239707.650000] sp + 316: 0x00000000 0xc02efe84
[239707.650000] sp + 320: 0xc000543c 0xc02efe88 _timer_handler()+132
[239707.650000] sp + 324: 0x0000827f 0xc02efe8c
[239707.650000] sp + 328: 0xc02eff9c 0xc02efe90 init_thread_union+8092 (stackdepth 100)
[239707.650000] sp + 332: 0xc02ee000 0xc02efe94 init_thread_union
[239707.650000] sp + 336: 0x00000000 0xc02efe98
[239707.650000] sp + 340: 0x00008679 0xc02efe9c
[239707.650000] sp + 344: 0xfffeffff 0xc02efea0
[239707.650000] sp + 348: 0xc02fb27c 0xc02efea4 tick_cpu_sched
[239707.650000] sp + 352: 0x029d0000 0xc02efea8
[239707.650000] sp + 356: 0x00a7358c 0xc02efeac
[239707.650000] sp + 360: 0xc0038908 0xc02efeb0 default_idle_call()+100
[239707.650000] sp + 364: 0xc02ee000 0xc02efeb4 init_thread_union
[239707.650000] sp + 368: 0x00000000 0xc02efeb8
[239707.650000] sp + 372: 0x029d28b8 0xc02efebc
[239707.650000] sp + 376: 0x00000ccc 0xc02efec0
[239707.650000] sp + 380: 0x00000000 0xc02efec4
[239707.650000] sp + 384: 0x0a74029d 0xc02efec8
[239707.650000] sp + 388: 0x00000000 0xc02efecc
[239707.650000] sp + 392: 0x016d4e81 0xc02efed0
[239707.650000] sp + 396: 0xc0303096 0xc02efed4 __warned.28644
[239707.650000] sp + 400: 0x00000000 0xc02efed8
[239707.650000] sp + 404: 0xc0303096 0xc02efedc __warned.28644
[239707.650000] sp + 408: 0x0000025f 0xc02efee0
[239707.650000] sp + 412: 0x00000000 0xc02efee4
[239707.650000] sp + 416: 0x00058610 0xc02efee8
[239707.650000] sp + 420: 0xc02ee000 0xc02efeec init_thread_union
[239707.650000] sp + 424: 0x00000000 0xc02efef0
[239707.650000] sp + 428: 0x00000006 0xc02efef4
[239707.650000] sp + 432: 0x00000000 0xc02efef8
[239707.650000] sp + 436: 0x00000000 0xc02efefc
[239707.650000] sp + 440: 0xc02f0000 0xc02eff00 tasklist_lock
[239707.650000] sp + 444: 0xc0308784 0xc02eff04 start_kernel()
[239707.650000] sp + 448: 0xcd998d17 0xc02eff08
[239707.650000] sp + 452: 0xc0038908 0xc02eff0c default_idle_call()+100
[239707.650000] sp + 456: 0xffffffff 0xc02eff10
[239707.650000] sp + 460: 0xc0004e1c 0xc02eff14 arch_local_irq_restore()+32
[239707.650000] sp + 464: 0xffffffff 0xc02eff18
[239707.650000] sp + 468: 0xc0038af0 0xc02eff1c cpu_startup_entry()+432
[239707.650000] sp + 472: 0xffffffff 0xc02eff20
[239707.650000] sp + 476: 0x0000da03 0xc02eff24
[239707.650000] sp + 480: 0x38161b68 0xc02eff28
[239707.650000] sp + 484: 0xc02eff48 0xc02eff2c init_thread_union+8008 (stackdepth 184)
[239707.650000] sp + 488: 0x00000001 0xc02eff30
[239707.650000] sp + 492: 0xc02f6ca0 0xc02eff34 clockevent_openrisc_timer
[239707.650000] sp + 496: 0x0000da03 0xc02eff38
[239707.650000] sp + 500: 0x4527e700 0xc02eff3c
[239707.650000] sp + 504: 0xc02fb27c 0xc02eff40 tick_cpu_sched
[239707.650000] sp + 508: 0xc0062738 0xc02eff44 tick_program_event()+116
[239707.650000] sp + 512: 0x0000da03 0xc02eff48
[239707.650000] sp + 516: 0x4527e700 0xc02eff4c
[239707.650000] sp + 520: 0xc02eff68 0xc02eff50 init_thread_union+8040 (stackdepth 152)
[239707.650000] sp + 524: 0xc02fb27c 0xc02eff54 tick_cpu_sched
[239707.650000] sp + 528: 0x0000da03 0xc02eff58
[239707.650000] sp + 532: 0x38157640 0xc02eff5c
[239707.650000] sp + 536: 0x0000da03 0xc02eff60
[239707.650000] sp + 540: 0xc0063380 0xc02eff64 __tick_nohz_idle_enter.constprop.23()+608
[239707.650000] sp + 544: 0xc02eff9c 0xc02eff68 init_thread_union+8092 (stackdepth 100)
[239707.650000] sp + 548: 0x0000da03 0xc02eff6c
[239707.650000] sp + 552: 0x4527e700 0xc02eff70
[239707.650000] sp + 556: 0xc02effa0 0xc02eff74 init_thread_union+8096 (stackdepth 96)
[239707.650000] sp + 560: 0xc05a2aa8 0xc02eff78 cpu_idle_force_poll
[239707.650000] sp + 564: 0xc05a2aa8 0xc02eff7c cpu_idle_force_poll
[239707.650000] sp + 568: 0xc0303096 0xc02eff80 __warned.28644
[239707.650000] sp + 572: 0xc0303096 0xc02eff84 __warned.28644
[239707.650000] sp + 576: 0xc02ee000 0xc02eff88 init_thread_union
[239707.650000] sp + 580: 0xc02eff94 0xc02eff8c init_thread_union+8084 (stackdepth 108)
[239707.650000] sp + 584: 0xc02ee000 0xc02eff90 init_thread_union
[239707.650000] sp + 588: 0xc02eff9c 0xc02eff94 init_thread_union+8092 (stackdepth 100)
[239707.650000] sp + 592: 0xc0038908 0xc02eff98 default_idle_call()+100
[239707.650000] sp + 596: 0xc02effac 0xc02eff9c init_thread_union+8108 (stackdepth 84)
[239707.650000] sp + 600: 0xc05a2aa8 0xc02effa0 cpu_idle_force_poll
[239707.650000] sp + 600: 0xc05a2aa8 0xc02effa4 cpu_idle_force_poll
[239707.650000] sp + 604: 0xc05a2aa8 0xc02effa8 cpu_idle_force_poll
[239707.650000] sp + 608: 0xc0038ac4 0xc02effac cpu_startup_entry()+388
[239707.650000] sp + 612: 0xc02effd0 0xc02effb0 init_thread_union+8144 (stackdepth 48)
[239707.650000] sp + 616: 0x00000000 0xc02effb4
[239707.650000] sp + 620: 0xc05a204c 0xc02effb8 initrd_start
[239707.650000] sp + 624: 0xc031d5d4 0xc02effbc boot_command_line()
[239707.650000] sp + 628: 0xc1ffd0e0 0xc02effc0
[239707.650000] sp + 632: 0xc05a200c 0xc02effc4 saved_command_line
[239707.650000] sp + 636: 0x00000000 0xc02effc8
[239707.650000] sp + 640: 0x00000000 0xc02effcc
[239707.650000] sp + 644: 0xc026ccb0 0xc02effd0 rest_init()+116
[239707.650000] sp + 648: 0xc02effd8 0xc02effd4 init_thread_union+8152 (stackdepth 40)
[239707.650000] sp + 652: 0xc0308bec 0xc02effd8 start_kernel()+1128
[239707.650000] sp + 656: 0x00000000 0xc02effdc
[239707.650000] sp + 660: 0xc0308408 0xc02effe0 unknown_bootoption()
[239707.650000] sp + 664: 0xc031d5d4 0xc02effe4 boot_command_line()
[239707.650000] sp + 668: 0xc02f0000 0xc02effe8 tasklist_lock
[239707.650000] sp + 672: 0x00000000 0xc02effec
[239707.650000] sp + 676: 0x00000000 0xc02efff0
[239707.650000] sp + 680: 0x00000000 0xc02efff4
[239707.650000] sp + 684: 0x00000000 0xc02efff8
[239707.650000] sp + 688: 0x00000000 0xc02efffc
[239707.650000] sp + 692: 0x00000000 0xc02f0000
[239707.650000]
[239707.650000] [<c0000000>] _stext()
[239707.650000] [<c006419c>] tick_irq_enter()+236
[239707.650000] [<c0000000>] _stext()
[239707.650000] [<c0062738>] tick_program_event()+116
[239707.650000] [<c0064100>] tick_irq_enter()+80
[239707.650000] [<c000e8bc>] irq_enter()+108
[239707.650000] [<c0004da0>] timer_interrupt()+52
[239707.650000] [<c000543c>] _timer_handler()+132
[239707.650000] [<c0038908>] default_idle_call()+100
[239707.650000] [<c0308784>] start_kernel()
[239707.650000] [<c0038908>] default_idle_call()+100
[239707.650000] [<c0004e1c>] arch_local_irq_restore()+32
[239707.650000] [<c0038af0>] cpu_startup_entry()+432
[239707.650000] [<c0062738>] tick_program_event()+116
[239707.650000] [<c0063380>] __tick_nohz_idle_enter.constprop.23()+608
[239707.650000] [<c0038908>] default_idle_call()+100
[239707.650000] [<c0038ac4>] cpu_startup_entry()+388
[239707.650000] [<c026ccb0>] rest_init()+116
[239707.650000] [<c0308bec>] start_kernel()+1128
[239707.650000] [<c0308408>] unknown_bootoption()
[239707.650000] =======================
[239707.650000]
Code: Bad PC value.
[239707.650000]
[239707.650000] UNHANDLED_EXCEPTION: entering infinite loop
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment