Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Dec 2013 19:09:24 -0500
From:      George Mitchell <george+freebsd@m5p.com>
To:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Raspberry Pi: still getting prefetch aborts
Message-ID:  <52BB73B4.5030000@m5p.com>

next in thread | raw e-mail | index | archive | help
FreeBSD 10.0-PRERELEASE (RPI-B) #0 r259866M: Wed Dec 25 17:26:28 EST 2013
(M because I selected serial output in RPI-B)

/usr/ports is NFS mounted from elsewhere.

On the theory that perhaps my hardware is flaky, I bought another RPi
and got the same results on it.  This sequence is now close to 100%
reproducible.  Surely this is happening to someone else!  And if not,
please point me to your working image.                      -- George

root@pi:~ # cd /usr/ports/ports-mgmt/pkg
root@pi:/usr/ports/ports-mgmt/pkg # make
Fatal kernel mode prefetch abort at 0x4278f502
trapframe: 0xdc369f98, spsr=60000033
r0 =00000000, r1 =000000c0, r2 =600000d3, r3 =60000013
r4 =c22efc00, r5 =00000000, r6 =c22e2140, r7 =c0675858
r8 =c25bb800, r9 =c2635100, r10=c25bb8e4, r11=0004240c
r12=00000000, ssp=dc369fe8, slr=c046405c, pc =4278f502

[ thread pid 876 tid 100067 ]
Stopped at      0x4278f502:     address 0x4278f502 is invalid
*** error reading from address 4278f502 ***
KDB: reentering
KDB: stack backtrace:
db_trace_self() at db_trace_self
          pc = 0xc04607e8  lr = 0xc012ebfc (db_trace_self_wrapper+0x30)
          sp = 0xdc369b40  fp = 0xdc369c58
         r10 = 0xc0547ac0
db_trace_self_wrapper() at db_trace_self_wrapper+0x30
          pc = 0xc012ebfc  lr = 0xc026a238 (kdb_reenter+0x60)
          sp = 0xdc369c60  fp = 0xdc369c68
          r4 = 0xc05884e0  r5 = 0xc05884c4
          r6 = 0xdc369c70  r7 = 0x4278f502
kdb_reenter() at kdb_reenter+0x60
          pc = 0xc026a238  lr = 0xc012b4f8 (db_get_value+0x40)
          sp = 0xdc369c70  fp = 0xdc369c88
          r4 = 0x00000004  r5 = 0x00000000
db_get_value() at db_get_value+0x40
          pc = 0xc012b4f8  lr = 0xc045f25c (db_disasm_read_word+0x14)
          sp = 0xdc369c90  fp = 0xdc369c90
          r4 = 0x4278f502  r5 = 0xc0488f00
          r6 = 0xc05884f0  r7 = 0xdc369f98
db_disasm_read_word() at db_disasm_read_word+0x14
          pc = 0xc045f25c  lr = 0xc0460c00 (disasm+0x20)
          sp = 0xdc369c98  fp = 0xdc369d80
disasm() at disasm+0x20
          pc = 0xc0460c00  lr = 0xc045f240 (db_disasm+0x18)
          sp = 0xdc369d88  fp = 0xdc369d88
          r4 = 0x4278f502  r5 = 0xdc369da8
          r6 = 0xc05884f0  r7 = 0xdc369f98
          r8 = 0xdc369f98  r9 = 0xc05884c4
         r10 = 0xc0547ac0
db_disasm() at db_disasm+0x18
          pc = 0xc045f240  lr = 0xc012d5a8 (db_print_loc_and_inst+0x2c)
          sp = 0xdc369d90  fp = 0xdc369d98
db_print_loc_and_inst() at db_print_loc_and_inst+0x2c
          pc = 0xc012d5a8  lr = 0xc012ed18 (db_trap+0xc0)
          sp = 0xdc369da0  fp = 0xdc369ec0
          r4 = 0x00000000
db_trap() at db_trap+0xc0
          pc = 0xc012ed18  lr = 0xc026a4ec (kdb_trap+0xd4)
          sp = 0xdc369ec8  fp = 0xdc369ee8
          r4 = 0x00000000  r5 = 0x00000000
          r6 = 0xc05884f0  r7 = 0xdc369f98
kdb_trap() at kdb_trap+0xd4
          pc = 0xc026a4ec  lr = 0xc0471ef0 (dab_fatal+0x174)
          sp = 0xdc369ef0  fp = 0xdc369f08
          r4 = 0xdc369f98  r5 = 0x200001d3
          r6 = 0x4278f502  r7 = 0x00000000
          r8 = 0xdc369f98  r9 = 0xc2635100
         r10 = 0xc26fd000
dab_fatal() at dab_fatal+0x174
          pc = 0xc0471ef0  lr = 0xc04721ac (prefetch_abort_handler+0x254)
          sp = 0xdc369f10  fp = 0xdc369f90
          r4 = 0x4278f502  r5 = 0xc272c320
          r6 = 0xc22e2140  r7 = 0xc0675858
prefetch_abort_handler() at prefetch_abort_handler+0x254
          pc = 0xc04721ac  lr = 0xc04623e0 (exception_exit)
          sp = 0xdc369f98  fp = 0x0004240c
          r4 = 0xc22efc00  r5 = 0x00000000
          r6 = 0xc22e2140  r7 = 0xc0675858
          r8 = 0xc25bb800  r9 = 0xc2635100
         r10 = 0xc25bb8e4
exception_exit() at exception_exit
          pc = 0xc04623e0  lr = 0xc046405c (spinlock_exit+0x18)
          sp = 0xdc369fec  fp = 0x0004240c
          r0 = 0x00000000  r1 = 0x000000c0
          r2 = 0x600000d3  r3 = 0x60000013
          r4 = 0xc22efc00  r5 = 0x00000000
          r6 = 0xc22e2140  r7 = 0xc0675858
          r8 = 0xc25bb800  r9 = 0xc2635100
         r10 = 0xc25bb8e4 r12 = 0x00000000
Unable to unwind into user mode
db> show proc 876
Process 876 (make) at 0xc26fd000:
  state: NORMAL
  uid: 0  gids: 0, 5
  parent: pid 873 at 0xc261a640
  ABI: FreeBSD ELF32
  arguments: make
  threads: 1
100067                   Run     CPU 0               make
db> show thread 100067
Thread 100067 at 0xc272c320:
  proc (pid 876): 0xc26fd000
  name: make
  stack: 0xdc369000-0xdc36afff
  flags: 0x1002004  pflags: 0
  state: RUNNING (CPU 0)
  priority: 140
  container lock: sched lock (0xc05935c0)
db>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52BB73B4.5030000>