Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Jun 2016 12:28:41 -0400 (EDT)
From:      Keith White <kwhite@site.uottawa.ca>
To:        Ian Lepore <ian@freebsd.org>
Cc:        Adrian Chadd <adrian.chadd@gmail.com>, freebsd-arm <freebsd-arm@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: RPI-B 11.0-ALPHA3 r301815 panic ["when connecting via WiFi"]
Message-ID:  <alpine.BSF.2.20.1606171215160.3021@genf-2.site.uottawa.ca>
In-Reply-To: <1466177966.51702.13.camel@freebsd.org>
References:  <5B47CB62-5BB6-41F3-82F9-507B42EF161B@dsl-only.net> <alpine.BSF.2.20.1606160658100.8225@localhost.my.domain> <alpine.BSF.2.20.1606170714240.16142@localhost.my.domain> <CAJ-Vmo=xY=a5VyBeS3dgOOpdAez8MuDTWekFYTK_8iFEp6b9Lg@mail.gmail.com> <1466177966.51702.13.camel@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 17 Jun 2016, Ian Lepore wrote:

> On Fri, 2016-06-17 at 07:52 -0700, Adrian Chadd wrote:
>> Just disable 11n for now. ifconfig wlan0 -ht (and reassociate.)
>>
>> See if it's that.
>>
>>
>>
>> -adrian
>>
>
> You can see from the crash info that it's an alignment fault:
>
>  r6 =c21a4876
>  ldmib   r6,{r1-r2}
>
> An ldm instruction requires 4-byte alignment.  Now the question is why
> undefining __NO_STRICT_ALIGNMENT didn't fix the problem.  Maybe the
> wifi code doesn't use __NO_STRICT_ALIGNMENT the same way other network
> drivers do?
>
> Unfortunately the pasted info lists the nearby symbol as $a.17+0x38,
> which doesn't help find the actual code.  A stack backtrace might help.
>
> -- Ian
> ...

What do I need to type at the "db> " prompt that would be useful?
I should be able to access the RPI-B in 5 hours.

Here's the result of a "where" taken from an earlier logged session
(different r6 value):

Fatal kernel mode data abort: 'Alignment Fault' on read
trapframe: 0xd3c8c8c0
FSR=00000001, FAR=c218607a, spsr=60000013
r0 =c07a6548, r1 =00000004, r2 =c06059f6, r3 =000007b6
r4 =d3c8ca28, r5 =d3c8cb40, r6 =c2186076, r7 =c1dd4ce0
r8 =c1dd4ce0, r9 =c2186076, r10=d3c8cb40, r11=d3c8c988
r12=00000000, ssp=d3c8c950, slr=c1b50370, pc =c0449ff8

[ thread pid 13 tid 100036 ]
Stopped at      $a.17+0x38:     ldmib   r6, {r1-r2}
db> where
Tracing pid 13 tid 100036 td 0xc1b50370
db_trace_self() at db_trace_self
          pc = 0xc055c774  lr = 0xc0145be4 ($a.19+0xf4)
          sp = 0xd3c8c5b8  fp = 0xd3c8c5d0
$a.19() at $a.19+0xf4
          pc = 0xc0145be4  lr = 0xc0145838 ($a.11+0x250)
          sp = 0xd3c8c5d8  fp = 0xd3c8c678
          r4 = 0x00000001  r5 = 0x00000000
          r6 = 0xc05fb0e7 r10 = 0xc07ab1a8
$a.11() at $a.11+0x250
          pc = 0xc0145838  lr = 0xc01455c0 (db_command_loop+0x5c)
          sp = 0xd3c8c680  fp = 0xd3c8c690
          r4 = 0xc05c8ec6  r5 = 0xc05ead58
          r6 = 0xc07ab194  r7 = 0xc06b7ea0
          r8 = 0xc079ed28  r9 = 0xc079ed2c
         r10 = 0x00000000
db_command_loop() at db_command_loop+0x5c
          pc = 0xc01455c0  lr = 0xc014872c (db_trap+0xec)
          sp = 0xd3c8c698  fp = 0xd3c8c7b0
          r4 = 0x00000001  r5 = 0x00000000
          r6 = 0xc07ab1a0 r10 = 0x00000000
db_trap() at db_trap+0xec
          pc = 0xc014872c  lr = 0xc02f83b0 (kdb_trap+0xb8)
          sp = 0xd3c8c7b8  fp = 0xd3c8c7d8
          r4 = 0x00000000  r5 = 0x00000001
          r6 = 0xc079ed48 r10 = 0x00000000
kdb_trap() at kdb_trap+0xb8
          pc = 0xc02f83b0  lr = 0xc05770b4 ($a.4+0x1c0)
          sp = 0xd3c8c7e0  fp = 0xd3c8c800
          r4 = 0xd3c8c8c0  r5 = 0x00000013
          r6 = 0xc218607a  r7 = 0x00000001
          r8 = 0x00000001  r9 = 0xc1b50370
         r10 = 0x00000000
$a.4() at $a.4+0x1c0
          pc = 0xc05770b4  lr = 0xc0577190 ($a.7+0x78)
          sp = 0xd3c8c808  fp = 0xd3c8c820
          r4 = 0xc218607a  r5 = 0xd3c8c840
          r6 = 0x00000001  r7 = 0x00000001
          r8 = 0x00000013 r10 = 0x00000000
$a.7() at $a.7+0x78
          pc = 0xc0577190  lr = 0xc0576eac (abort_handler+0x438)
          sp = 0xd3c8c828  fp = 0xd3c8c8b8
          r4 = 0xd3c8c8c0  r5 = 0xc0577118
abort_handler() at abort_handler+0x438
          pc = 0xc0576eac  lr = 0xc055eed0 (exception_exit)
          sp = 0xd3c8c8c0  fp = 0xd3c8c988
          r4 = 0xd3c8ca28  r5 = 0xd3c8cb40
          r6 = 0xc2186076  r7 = 0xc1dd4ce0
          r8 = 0xc1dd4ce0  r9 = 0xc2186076
         r10 = 0xd3c8cb40
exception_exit() at exception_exit
          pc = 0xc055eed0  lr = 0xc1b50370 (0xc1b50370)
          sp = 0xd3c8c950  fp = 0xd3c8c988
          r0 = 0xc07a6548  r1 = 0x00000004
          r2 = 0xc06059f6  r3 = 0x000007b6
          r4 = 0xd3c8ca28  r5 = 0xd3c8cb40
          r6 = 0xc2186076  r7 = 0xc1dd4ce0
          r8 = 0xc1dd4ce0  r9 = 0xc2186076
         r10 = 0xd3c8cb40 r12 = 0x00000000
$a.17() at $a.17+0x3c
          pc = 0xc0449ffc  lr = 0xc0449068 (syncache_expand+0x10c)
          sp = 0xd3c8c990  fp = 0xd3c8cad8
          r4 = 0xc1dd4cf0  r5 = 0xc23c9000
          r6 = 0xc1f65208  r7 = 0xd3c8ca28
          r8 = 0xc1dd4ce0  r9 = 0xc2186076
         r10 = 0xd3c8cb40
syncache_expand() at syncache_expand+0x10c
          pc = 0xc0449068  lr = 0xc0438df8 ($a.21+0x100)
          sp = 0xd3c8cae0  fp = 0xd3c8cbb0
          r4 = 0xc0604081  r5 = 0xc23b53a8
          r6 = 0xd3c8cb6c  r7 = 0xc2186076
          r8 = 0xc23b54a4  r9 = 0x00000000
         r10 = 0xc07ae0d8
$a.21() at $a.21+0x100
          pc = 0xc0438df8  lr = 0xc03bf95c (ip_input+0x230)
          sp = 0xd3c8cbb8  fp = 0xd3c8cbf0
          r4 = 0xc2186062  r5 = 0xc1e068e0
          r6 = 0x00000003  r7 = 0x00000000
          r8 = 0x00000000  r9 = 0xc06ff570
         r10 = 0xc07ad790
ip_input() at ip_input+0x230
          pc = 0xc03bf95c  lr = 0xc039e7dc (netisr_dispatch_src+0xa8)
          sp = 0xd3c8cbf8  fp = 0xd3c8cc20
          r4 = 0x00000001  r5 = 0xc07a59b4
          r6 = 0x00000000  r7 = 0xc07a59b0
          r8 = 0xc2102a00  r9 = 0xc05fd75c
         r10 = 0xc2102a00
netisr_dispatch_src() at netisr_dispatch_src+0xa8
          pc = 0xc039e7dc  lr = 0xc03996cc (ether_demux+0x198)
          sp = 0xd3c8cc28  fp = 0xd3c8cc40
          r4 = 0xc1b2a800  r5 = 0x00000800
          r6 = 0xc2102a10  r7 = 0x00000800
          r8 = 0xc2186054  r9 = 0xc05fd75c
         r10 = 0xc2102a00
ether_demux() at ether_demux+0x198
          pc = 0xc03996cc  lr = 0xc039a610 ($a.29+0x39c)
          sp = 0xd3c8cc48  fp = 0xd3c8cc68
          r4 = 0xc1b2a800  r5 = 0xc2102a00
          r6 = 0xc2102a10 r10 = 0xc2102a00
$a.29() at $a.29+0x39c
          pc = 0xc039a610  lr = 0xc039e7dc (netisr_dispatch_src+0xa8)
          sp = 0xd3c8cc70  fp = 0xd3c8cc98
          r4 = 0x00000005  r5 = 0xc07a5a34
          r6 = 0x00000000  r7 = 0xc07a5a30
          r8 = 0xc2102a00 r10 = 0xc2102a00
netisr_dispatch_src() at netisr_dispatch_src+0xa8
          pc = 0xc039e7dc  lr = 0xc0399a6c ($a.13+0x64)
          sp = 0xd3c8cca0  fp = 0xd3c8ccc0
          r4 = 0xc1b2a800  r5 = 0xc2102a00
          r6 = 0x00000000  r7 = 0x00000000
          r8 = 0xc05fd734  r9 = 0xc05fd75c
         r10 = 0xc2102a00
$a.13() at $a.13+0x64
          pc = 0xc0399a6c  lr = 0xc1ff1170 (sta_input+0x498)
          sp = 0xd3c8ccc8  fp = 0xd3c8cd08
          r4 = 0xc202a000  r5 = 0xc1b2a800
          r6 = 0x0000001a  r7 = 0xc23720d0
          r8 = 0xc2372000  r9 = 0x00000080
sta_input() at sta_input+0x498
          pc = 0xc1ff1170  lr = 0xc1f9d4a8 ($a.45+0x3a8)
          sp = 0xd3c8cd10  fp = 0xd3c8cd88
          r4 = 0x00000000  r5 = 0xc1ff0cd8
          r6 = 0xc1f2f4e0  r7 = 0xffffffb4
          r8 = 0xc1f37030  r9 = 0xc2102a00
         r10 = 0xc2372000
$a.45() at $a.45+0x3a8
          pc = 0xc1f9d4a8  lr = 0xc01ca260 ($a.10+0x744)
          sp = 0xd3c8cd90  fp = 0xd3c8cdd0
          r4 = 0xc1f37173  r5 = 0xc0710948
          r6 = 0xc05d677d  r7 = 0xc1f37000
          r8 = 0xc1f37030  r9 = 0xc1f37030
         r10 = 0xc1f370c0
$a.10() at $a.10+0x744
          pc = 0xc01ca260  lr = 0xc01cb48c (usb_command_wrapper+0x150)
          sp = 0xd3c8cdd8  fp = 0xd3c8cdf0
          r4 = 0xc1f37030  r5 = 0xc0710948
          r6 = 0xc05d6a58  r7 = 0xc05d6a7f
          r8 = 0x00000000  r9 = 0xc05d6a6c
         r10 = 0xc1b5d094
usb_command_wrapper() at usb_command_wrapper+0x150
          pc = 0xc01cb48c  lr = 0xc01ca3f8 ($a.12+0x70)
          sp = 0xd3c8cdf8  fp = 0xd3c8ce00
          r4 = 0xc05d677d  r5 = 0xc1f37000
          r6 = 0xc1f37044  r7 = 0xc05d6094
          r8 = 0xc0710994  r9 = 0xc05d60a0
$a.12() at $a.12+0x70
          pc = 0xc01ca3f8  lr = 0xc01c51f4 ($a.4+0xc8)
          sp = 0xd3c8ce08  fp = 0xd3c8ce28
          r4 = 0xc1b5d084  r5 = 0xc1b5d08c
$a.4() at $a.4+0xc8
          pc = 0xc01c51f4  lr = 0xc0284a44 (fork_exit+0x80)
          sp = 0xd3c8ce30  fp = 0xd3c8ce48
          r4 = 0xc1b50370  r5 = 0xc1ac8720
          r6 = 0xc01c512c  r7 = 0xc1b5d084
          r8 = 0xd3c8ce50  r9 = 0x00000000
         r10 = 0x00000000
fork_exit() at fork_exit+0x80
          pc = 0xc0284a44  lr = 0xc055ee5c (swi_exit)
          sp = 0xd3c8ce50  fp = 0x00000000
          r4 = 0xc01c512c  r5 = 0xc1b5d084
          r6 = 0x00000000  r7 = 0x00000000
          r8 = 0x00000000 r10 = 0x00000000
swi_exit() at swi_exit
          pc = 0xc055ee5c  lr = 0xc055ee5c (swi_exit)
          sp = 0xd3c8ce50  fp = 0x00000000
db>


...keith



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.20.1606171215160.3021>