mv/orion hang up

Mori Hiroki yamori813 at yahoo.co.jp
Mon Sep 5 12:25:23 UTC 2016


Hi.

I can break at this hang.

This is kdb infomation.

Timecounters tick every 10.000 msec
KDB: enter: Break to debugger
[ thread pid 10 tid 100002 ]
Stopped at      kdb_break+0x5c: ldrb    r15, [r15, r15, ror r15]!
db> ps
  pid  ppid  pgrp   uid  state   wmesg   wchan       cmd
    5     0     0     0  DL      -       0xc0bc0d68  [soaiod4]
    4     0     0     0  DL      -       0xc0bc0d68  [soaiod3]
    3     0     0     0  DL      -       0xc0bc0d68  [soaiod2]
    2     0     0     0  DL      -       0xc0bc0d68  [soaiod1]
   12     0     0     0  DL      (threaded)          [geom]
100012                   D       -       0xc0bc8530  [g_event]
100013                   D       -       0xc0bc8534  [g_up]
100014                   D       -       0xc0bc8538  [g_down]
   11     0     0     0  WL      (threaded)          [intr]
100003                   I                           [swi4: clock (0)]
100004                   I                           [swi3: vm]
100005                   I                           [swi1: netisr 0]
100006                   I                           [swi6: task queue]
100007                   I                           [swi6: Giant taskq]
100010                   I                           [swi5: fast taskq]
100015                   I                           [swi0: uart uart]
   10     0     0     0  RL      CPU 0               [idle]
    1     0     0     0  ?L                          [kernel]
    0     0     0     0  LLs     (threaded)          [kernel]
100000                   L      *if_afda 0xc0eb0f00  [swapper]
100008                   D       -       0xc0ecc580  [thread taskq]
100009                   D       -       0xc0ecc500  [aiod_kick taskq]
100011                   D       -       0xc0ecc400  [kqueue_ctx taskq]
db> where
Tracing pid 10 tid 100002 td 0xc0ee7a80
db_trace_self() at db_trace_self
         pc = 0xc0adbb60  lr = 0xc090e930 (db_hex2dec+0x1dc)
         sp = 0xc30329b0  fp = 0xc30329c8
db_hex2dec() at db_hex2dec+0x1dc
         pc = 0xc090e930  lr = 0xc090e588 (db_command_loop+0x2e0)
         sp = 0xc30329d0  fp = 0xc3032a78
         r4 = 0x00000001  r5 = 0x00000000
         r6 = 0xc0bc81fa r10 = 0xc0b7ea24
db_command_loop() at db_command_loop+0x2e0
         pc = 0xc090e588  lr = 0xc090e2f4 (db_command_loop+0x4c)
         sp = 0xc3032a80  fp = 0xc3032a90
         r4 = 0xc0b0da53  r5 = 0xc0b18bfb
         r6 = 0xc0bc81e0  r7 = 0xc0b7ed88
         r8 = 0xc0bbd610  r9 = 0xc0bbd614
        r10 = 0xc3032c58
db_command_loop() at db_command_loop+0x4c
         pc = 0xc090e2f4  lr = 0xc09114c4 (db_fetch_ksymtab+0x2ac)
         sp = 0xc3032a98  fp = 0xc3032bb0
         r4 = 0x00000001  r5 = 0x00000000
         r6 = 0xc0bc81ec r10 = 0xc3032c58
db_fetch_ksymtab() at db_fetch_ksymtab+0x2ac
         pc = 0xc09114c4  lr = 0xc09e546c (kdb_trap+0xc0)
         sp = 0xc3032bb8  fp = 0xc3032bd8
         r4 = 0x00000000  r5 = 0x00000001
         r6 = 0xc0bbd630 r10 = 0xc3032c58
kdb_trap() at kdb_trap+0xc0
         pc = 0xc09e546c  lr = 0xc0aece30 (undefinedinstruction+0x294)
         sp = 0xc3032be0  fp = 0xc3032c50
         r4 = 0x00000000  r5 = 0x00000000
         r6 = 0xc0aecaec  r7 = 0xe7ffffff
         r8 = 0xc0ee7a80  r9 = 0xc09e4cb4
        r10 = 0xc3032c58
undefinedinstruction() at undefinedinstruction+0x294
         pc = 0xc0aece30  lr = 0xc0adccac (exception_exit)
         sp = 0xc3032c58  fp = 0xc3032cf0
         r4 = 0x60000093  r5 = 0xffff1004
         r6 = 0xc0b82a7c  r7 = 0x00060000
         r8 = 0x00000001  r9 = 0x0000ffff
        r10 = 0x00000000
exception_exit() at exception_exit
         pc = 0xc0adccac  lr = 0xc09e4ca4 (kdb_break+0x4c)
         sp = 0xc3032ce8  fp = 0xc3032cf0
         r0 = 0xc0bbd624  r1 = 0x00000000
         r2 = 0x00000001  r3 = 0xc0b1ac8b
         r4 = 0x00000001  r5 = 0xc0ea9000
         r6 = 0xc0b82a7c  r7 = 0x00060000
         r8 = 0x00000001  r9 = 0x0000ffff
        r10 = 0x00000000 r12 = 0x00000000
kdb_break() at kdb_break+0x60
         pc = 0xc09e4cb8  lr = 0xc093c66c (uart_bus_attach+0x83c)
         sp = 0xc3032cf8  fp = 0xc3032d38
         r4 = 0x00000000 r10 = 0x00000000
uart_bus_attach() at uart_bus_attach+0x83c
         pc = 0xc093c66c  lr = 0xc0989aac (intr_event_handle+0x78)
         sp = 0xc3032d40  fp = 0xc3032d58
         r4 = 0xc0eb9000  r5 = 0xc3032d78
         r6 = 0x00000000  r7 = 0xc0f16e00
         r8 = 0x00000000  r9 = 0xc0ee7a80
        r10 = 0x000000b4
intr_event_handle() at intr_event_handle+0x78
         pc = 0xc0989aac  lr = 0xc0ade22c (intr_irq_handler+0x54)
         sp = 0xc3032d60  fp = 0xc3032d70
         r4 = 0xc3032d78  r5 = 0x00000003
         r6 = 0xc0bcade8  r7 = 0xc0bc5608
         r8 = 0xc0b19f1b  r9 = 0x00000a55
intr_irq_handler() at intr_irq_handler+0x54
         pc = 0xc0ade22c  lr = 0xc0adccac (exception_exit)
         sp = 0xc3032d78  fp = 0xc3032e28
         r4 = 0xffffffff  r5 = 0xffff1004
         r6 = 0xc0b91edc  r7 = 0xc0bbcd40
exception_exit() at exception_exit
         pc = 0xc0adccac  lr = 0xc0ade8f4 (cpu_idle+0x94)
         sp = 0xc3032e08  fp = 0xc3032e28
         r0 = 0x00002710  r1 = 0x0000058b
         r2 = 0x00000000  r3 = 0x60000013
         r4 = 0xc0ee7a80  r5 = 0xc0b91ee0
         r6 = 0xc0b91edc  r7 = 0xc0bbcd40
         r8 = 0xc0b19f1b  r9 = 0x00000a55
        r10 = 0x000000b4 r12 = 0x0160b293
sched_idletd() at sched_idletd+0xfc
         pc = 0xc09d5a78  lr = 0xc0987760 (fork_exit+0x6c)
         sp = 0xc3032e30  fp = 0xc3032e48
         r4 = 0xc0ee7a80  r5 = 0xc0ee3a68
         r6 = 0xc0b9f628  r7 = 0x00000000
         r8 = 0xc3032e50  r9 = 0xc09d597c
        r10 = 0x00000000
fork_exit() at fork_exit+0x6c
         pc = 0xc0987760  lr = 0xc0adcc3c (swi_exit)
         sp = 0xc3032e50  fp = 0x00000000
         r4 = 0xc09d597c  r5 = 0x00000000
         r6 = 0x00000000  r7 = 0x00000000
         r8 = 0x00000000  r9 = 0x00000000
swi_exit() at swi_exit
         pc = 0xc0adcc3c  lr = 0xc0adcc3c (swi_exit)
         sp = 0xc3032e50  fp = 0x00000000
db>  


This case is config have gme device. I try to delete gme
device in config then not hang up and go rootfs mount.

This is very strange.

Regards

Hiroki Mori

----- Original Message -----
> From: Stanislav Sedov <stas at freebsd.org>
> To: Mori Hiroki <yamori813 at yahoo.co.jp>
> Cc: "freebsd-arm at freebsd.org" <freebsd-arm at freebsd.org>
> Date: 2016/9/5, Mon 00:11
> Subject: Re: mv/orion hang up
> 
> 
>>  On Sep 3, 2016, at 7:49 PM, Mori Hiroki <yamori813 at yahoo.co.jp> 
> wrote:
>> 
>>  Hi.
>> 
>>  I missing memory size at dts file.
>> 
>>  I do fix then go to device probe.
>> 
>>  But still hang up after Timecounters
>> 
>>  https://gist.github.com/yamori813/ecd5df1b314053a73f310c1122775540
> 
> Can you break into ddb using the break sequence?  That will tell you where it 
> hangs at least.
> 
> --
> ST4096-RIPE
> 


More information about the freebsd-arm mailing list