Boot failure for CURRENT on

Ian Lepore ian at FreeBSD.org
Mon Dec 30 16:08:48 UTC 2013


On Mon, 2013-12-30 at 09:35 +0000, Iain Young wrote:
> Hi Folks,
> 
> Tried a build of -CURRENT yesterday (28/29th Dec), and had the following 
> crash on a Beaglebone White.
> 
> Thought it might be clocks not enabled for the extra serial ports, as
> I had a similar crash when I forgot to enable them before, so applied
> my  (old) patch, but still the same, so wasn't that.
> 
> Did an svn update today (Dec 30th, revision 260082), and while I've
> not rebuilt the kernel yet, didn't see any changes in the arm tree
> anyway, so suspect the problem remains.
> 
> I'm not great with the debugger, but if anyone wants extra info
> from it, just let me know which commands to type.
> 
> Output from fdt_start to the crash is below.
> 
> 
> Iain
> 
> 
> fdt_start: 0x0060A128
> Kernel entry at 0x80200100...
> Kernel args: (null)
> KDB: debugger backends: ddb
> KDB: current backend: ddb
> Copyright (c) 1992-2013 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
> 	The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 11.0-CURRENT #6 r260013M: Sun Dec 29 20:43:46 UTC 2013
>      root at beaglebone:/usr/obj/usr/src/sys/BEAGLEBONE-TARDIS arm
> gcc version 4.2.1 20070831 patched [FreeBSD]
> CPU: Cortex A8-r3 rev 2 (Cortex-A core)
>   Supported features: ARM_ISA THUMB2 JAZELLE THUMBEE ARMv4 Security_Ext
>   WB disabled EABT branch prediction enabled
> LoUU:2 LoC:2 LoUIS:1
> Cache level 1:
>   32KB/64B 4-way data cache WT WB Read-Alloc
>   32KB/64B 4-way instruction cache Read-Alloc
> Cache level 2:
>   256KB/64B 8-way unified cache WT WB Read-Alloc Write-Alloc
> real memory  = 268435456 (256 MB)
> avail memory = 255172608 (243 MB)
> Texas Instruments AM3358 Processor, Revision ES1.0
> random device not loaded; using insecure entropy
> random: <Software, Yarrow> initialized
> nexus0: <Open Firmware Nexus device>
> simplebus0: <Flattened device tree simple bus> on nexus0
> aintc0: <TI AINTC Interrupt Controller> mem 0x48200000-0x48200fff on 
> simplebus0
> aintc0: Revision 5.0
> ti_scm0: <TI Control Module> mem 0x44e10000-0x44e11fff on simplebus0
> am335x_prcm0: <AM335x Power and Clock Management> mem 
> 0x44e00000-0x44e012ff on simplebus0
> am335x_prcm0: Clocks: System 24.0 MHz, CPU 500 MHz
> am335x_dmtimer0: <AM335x DMTimer> mem 
> 0x44e05000-0x44e05fff,0x44e31000-0x44e31fff,0x48040000-0x48040fff,0x48042000-0x48042fff,0x48044000-0x48044fff,0x48046000-0x48046fff,0x48048000-0x48048fff,0x4804a000-0x4804afff 
> irq 66,67,68,69,92,93,94,95 on simplebus0
> 
> vm_fault(0xc063dca8, 1000000, 1, 0) -> 1
> Fatal kernel mode data abort: 'Translation Fault (S)'
> trapframe: 0xc0770b60
> FSR=00000005, FAR=0100013e, spsr=a0000093
> r0 =0100013e, r1 =c05b6d94, r2 =0100013e, r3 =c0561878
> r4 =c05602fc, r5 =0100013e, r6 =c0770c28, r7 =c18dda80
> r8 =c1805e00, r9 =c0761000, r10=c18dda80, r11=c0770bc4
> r12=c0770bc8, ssp=c0770bb0, slr=c054abb0, pc =c040f0a4
> 
> [ thread pid 0 tid 100000 ]
> Stopped at      strcmp+0x14:    ldrb    r0, [r2]

Given that it appears to be dying in the dmtimer code I recently
touched, I'd say my changes (r259739, 43, 44, 50) are a good candidate
(except, of course, it works when I run it on my BBW).

Do you have option PPS and do you have one of the timer trigger pins
configured for capture?  On my BBW, the next line of output I'd see is:

  am335x_dmtimer0: Using DMTimer4 for PPS device /dev/pps0

Can you get a stack backtrace when it crashes?

-- Ian





More information about the freebsd-arm mailing list