Date: Thu, 14 May 2015 10:33:30 +0200 From: Svatopluk Kraus <onwahe@gmail.com> To: Keith White <kwhite@site.uottawa.ca> Cc: "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org> Subject: Re: Translation Fault panic when trying to use an mfs_root on BBB Message-ID: <CAFHCsPXfj0Q9gYn-auK_7zQiA_HaijhzFddm1r2TJ1K7ftAebA@mail.gmail.com> In-Reply-To: <alpine.BSF.2.20.1505131848310.98564@localhost.my.domain> References: <alpine.BSF.2.20.1505131848310.98564@localhost.my.domain>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, May 14, 2015 at 2:03 AM, Keith White <kwhite@site.uottawa.ca> wrote: > I get the following panic when trying to load an mfs_root on a > reasonably current BBB image: > > Fatal kernel mode data abort: 'Translation Fault (L1)' on read > trapframe: 0xdd43fd50 > FSR=00000005, FAR=01211ef0, spsr=20000113 > r0 =c35f4200, r1 =01211f00, r2 =000001e0, r3 =3dc1dd00 > r4 =c3638930, r5 =c362d838, r6 =c362d810, r7 =c06037b8 > r8 =0000002d, r9 =00000000, r10=c3638930, r11=dd43fdf0 > r12=00000000, ssp=dd43fde0, slr=c0249918, pc =c05c6a68 > > [ thread pid 4 tid 100054 ] > Stopped at memmove+0x29c: ldmdb r1!, {r3-r4, r12, r14} > db> > > Hints, suggestions? > > ...keith > > --------------------------------- > More (trimmed) details from boot: > > ... > U-Boot 2014.10 (Mar 19 2015 - 18:29:51) > ... > FreeBSD/armv6hf U-Boot loader, Revision 1.2 > (kwhite@freebsd11, Tue Mar 17 22:23:25 EDT 2015) > ... > Found U-Boot device: disk > Checking unit=1 slice=<auto> partition=<auto>... good. > /boot/kernel/kernel data=0x505c2c+0x923d4 syms=[0x4+0x606a0+0x4+0x65ed4] > /boot/kernel/snd_uaudio.ko text=0xed3c data=0x620+0x10 > syms=[0x4+0x1ec0+0x4+0x1a2f] > ... > Type '?' for a list of commands, 'help' for more detailed help. > loader> load -t mfs_root /rootfs > /rootfs size=0x858000 > loader> boot -asv > Booting... > /boot/dtb/beaglebone-black.dtb size=0x24b4 > Loaded DTB from file 'beaglebone-black.dtb'. > Kernel entry at 0x80200100... > Kernel args: -asv > KDB: debugger backends: ddb > KDB: current backend: ddb > Copyright (c) 1992-2015 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 #1 r282672M: Tue May 12 06:57:24 EDT 2015 > kwhite@freebsd11:/usr/obj/arm.armv6hf/tank/RPI/head/sys/BEAGLEBONE-LOCAL > arm > FreeBSD clang version 3.6.0 (tags/RELEASE_360/final 230434) 20150225 > WARNING: WITNESS option enabled, expect reduced performance. > Preloaded elf kernel "/boot/kernel/kernel" at 0xc1219000. > ... > mmc0: Probing bus > usbus0: 480Mbps High Speed USB v2.0 > usbus1: 480Mbps High Speed USB v2.0 > md0: Preloaded image </rootfs> 8749056 bytes at 0x9b9f00 > ugen1.1: <Mentor Graphics> at usbus1 > uhub0: <Mentor Graphics OTG Root HUB, class 9/0, rev 2.00/1.00, addr 1> on > usbus1 > ugen0.1: <Mentor Graphics> at usbus0 > uhub1: <Mentor Graphics OTG Root HUB, class 9/0, rev 2.00/1.00, addr 1> on > usbus0 > Fatal kernel mode data abort: 'Translation Fault (L1)' on read > trapframe: 0xdd43fd50 > FSR=00000005, FAR=01211ef0, spsr=20000113 > r0 =c35f4200, r1 =01211f00, r2 =000001e0, r3 =3dc1dd00 > r4 =c3638930, r5 =c362d838, r6 =c362d810, r7 =c06037b8 > r8 =0000002d, r9 =00000000, r10=c3638930, r11=dd43fdf0 > r12=00000000, ssp=dd43fde0, slr=c0249918, pc =c05c6a68 > > [ thread pid 4 tid 100054 ] > Stopped at memmove+0x29c: ldmdb r1!, {r3-r4, r12, r14} Well, FAR (fault address) points to user address space. System is still in boot process and no user address should be used. The first thing is to find out if arguments pushed to bcopy() in mdstart_preload() are correct. Can you print them out? > ... > db> where > Tracing pid 4 tid 100054 td 0xc362b990 > db_trace_self() at db_trace_self > pc = 0xc05b31b8 lr = 0xc0238364 (db_stack_trace+0x108) > sp = 0xdd43fa58 fp = 0xdd43fa70 > r10 = 0xc0788d34 > db_stack_trace() at db_stack_trace+0x108 > pc = 0xc0238364 lr = 0xc0237db0 (db_command+0x380) > sp = 0xdd43fa78 fp = 0xdd43fb18 > r4 = 0x00000000 r5 = 0x00000000 > r6 = 0x00000072 r10 = 0xc0788d34 > db_command() at db_command+0x380 > pc = 0xc0237db0 lr = 0xc0237a20 (db_command_loop+0x74) > sp = 0xdd43fb20 fp = 0xdd43fb30 > r4 = 0xc0601fde r5 = 0xc061e763 > r6 = 0xc0788d20 r7 = 0xc06cad34 > r8 = 0xc07261d0 r9 = 0xc07261d4 > r10 = 0x00000013 > db_command_loop() at db_command_loop+0x74 > pc = 0xc0237a20 lr = 0xc023a520 (db_trap+0x108) > sp = 0xdd43fb38 fp = 0xdd43fc50 > r4 = 0x00000000 r5 = 0xc0788d2c > r6 = 0xc07261f8 r10 = 0x00000013 > db_trap() at db_trap+0x108 > pc = 0xc023a520 lr = 0xc03b80f8 (kdb_trap+0xd4) > sp = 0xdd43fc58 fp = 0xdd43fc78 > r4 = 0x00000000 r5 = 0x00000005 > r6 = 0xc07261f8 r7 = 0xc06cad34 > kdb_trap() at kdb_trap+0xd4 > pc = 0xc03b80f8 lr = 0xc05c9748 (abort_fatal+0x1d4) > sp = 0xdd43fc80 fp = 0xdd43fca0 > r4 = 0xdd43fd50 r5 = 0x00000013 > r6 = 0x01211ef0 r7 = 0x00000005 > r8 = 0x00000005 r9 = 0x01211ef0 > r10 = 0x00000013 > abort_fatal() at abort_fatal+0x1d4 > pc = 0xc05c9748 lr = 0xc05c9574 (abort_fatal) > sp = 0xdd43fca8 fp = 0xdd43fd48 > r4 = 0xdd43fd50 r5 = 0x00000000 > r6 = 0x00000005 r7 = 0x00000005 > r8 = 0xc362b990 r10 = 0x00000013 > abort_fatal() at abort_fatal > pc = 0xc05c9574 lr = 0xc05b4840 (exception_exit) > sp = 0xdd43fd50 fp = 0xdd43fdf0 > r4 = 0xc362d838 r5 = 0xc362d810 > r6 = 0xc06037b8 r7 = 0x0000002d > r8 = 0x00000000 r10 = 0xc3638930 > exception_exit() at exception_exit > pc = 0xc05b4840 lr = 0xc0249918 (mdstart_preload+0x58) > sp = 0xdd43fde0 fp = 0xdd43fdf0 > r0 = 0xc35f4200 r1 = 0x01211f00 > r2 = 0x000001e0 r3 = 0x3dc1dd00 > r4 = 0xc3638930 r5 = 0xc362d838 > r6 = 0xc362d810 r7 = 0xc06037b8 > r8 = 0x0000002d r9 = 0x00000000 > r10 = 0xc3638930 r12 = 0x00000000 > memmove() at memmove+0x29c > pc = 0xc05c6a68 lr = 0xc0249918 (mdstart_preload+0x58) > sp = 0xdd43fde0 fp = 0xdd43fdf0 > mdstart_preload() at mdstart_preload+0x58 > pc = 0xc0249918 lr = 0xc0249834 (md_kthread+0x194) > sp = 0xdd43fdf8 fp = 0xdd43fe30 > r4 = 0xc362d800 r10 = 0xc3638930 > md_kthread() at md_kthread+0x194 > pc = 0xc0249834 lr = 0xc034b0d0 (fork_exit+0x84) > sp = 0xdd43fe38 fp = 0xdd43fe50 > r4 = 0xc362b990 r5 = 0xc3379000 > r6 = 0xc02496a0 r7 = 0xc362d800 > r8 = 0xdd43fe58 r9 = 0xc0725d70 > r10 = 0x00000104 > fork_exit() at fork_exit+0x84 > pc = 0xc034b0d0 lr = 0xc05b47d0 (swi_exit) > sp = 0xdd43fe58 fp = 0x00000000 > r4 = 0xc02496a0 r5 = 0xc362d800 > r6 = 0xc072762c r7 = 0x00000000 > r8 = 0xc0725d74 r10 = 0x00000104 > swi_exit() at swi_exit > pc = 0xc05b47d0 lr = 0xc05b47d0 (swi_exit) > sp = 0xdd43fe58 fp = 0x00000000 > db> reboot > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFHCsPXfj0Q9gYn-auK_7zQiA_HaijhzFddm1r2TJ1K7ftAebA>