From owner-freebsd-arm@FreeBSD.ORG Sun Oct 30 20:32:44 2011 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8708B1065673 for ; Sun, 30 Oct 2011 20:32:44 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe09.c2i.net [212.247.155.2]) by mx1.freebsd.org (Postfix) with ESMTP id C1F0C8FC1A for ; Sun, 30 Oct 2011 20:32:41 +0000 (UTC) X-T2-Spam-Status: No, hits=-1.0 required=5.0 tests=ALL_TRUSTED, BAYES_40 Received: from [188.126.198.129] (account mc467741@c2i.net HELO laptop002.hselasky.homeunix.org) by mailfe09.swip.net (CommuniGate Pro SMTP 5.2.19) with ESMTPA id 22398514; Sun, 30 Oct 2011 21:22:35 +0100 From: Hans Petter Selasky To: freebsd-arm@freebsd.org Date: Sun, 30 Oct 2011 21:19:35 +0100 User-Agent: KMail/1.13.5 (FreeBSD/8.2-STABLE; KDE/4.4.5; amd64; ; ) References: <201110292242.p9TMgf3J029021@red.freebsd.org> In-Reply-To: <201110292242.p9TMgf3J029021@red.freebsd.org> X-Face: *nPdTl_}RuAI6^PVpA02T?$%Xa^>@hE0uyUIoiha$pC:9TVgl.Oq, NwSZ4V"|LR.+tj}g5 %V,x^qOs~mnU3]Gn; cQLv&.N>TrxmSFf+p6(30a/{)KUU!s}w\IhQBj}[g}bj0I3^glmC( :AuzV9:.hESm-x4h240C`9=w MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201110302119.35139.hselasky@c2i.net> Cc: freebsd-gnats-submit@freebsd.org Subject: Re: arm/162159: USB errors leading to panic on DockStar 9.0-RC1/arm X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Oct 2011 20:32:44 -0000 On Sunday 30 October 2011 00:42:41 Jan Bramkamp wrote: > >Number: 162159 > >Category: arm > >Synopsis: USB errors leading to panic on DockStar 9.0-RC1/arm > >Confidential: no > >Severity: critical > >Priority: low > >Responsible: freebsd-arm > >State: open > >Quarter: > >Keywords: > >Date-Required: > >Class: sw-bug > >Submitter-Id: current-users > >Arrival-Date: Sat Oct 29 22:50:07 UTC 2011 > >Closed-Date: > >Last-Modified: > >Originator: Jan Bramkamp > >Release: 9.0-RC1 r226591 > >Organization: > > >Environment: > FreeBSD fb9ds.crest.dn42 9.0-RC1 FreeBSD 9.0-RC1 #5: Sat Oct 29 19:57:58 C > EST 2011 root@t420.crest.dn42:/usr/obj/arm.arm/usr/src/sys/DOCKSTAR a > rm > > >Description: > FreeBSD 9.0-RC1 boots into Multiuser on DockStar. A few seconds of disk I/O > on USB mass storage devices later "USB error: address decoding error > (addr=$HEX)" floods the RS232 console. They are stop as soon as all disk > I/O is stopped. syslogd turns this into a feedback loop. (Nearly?) each > log write results in new log messages. A "portsnap fetch" is enough on a > fresh installation triggered the panic below. > > > console: > fb9ds# portsnap fetch > Looking up portsnap.FreeBSD.org mirrors... 5 mirrors found. > Fetching snapshot tag from portsnap5.FreeBSD.org... done. > Fetching snapshot metadata... done. > Fetching snapshot generated at Sat Oct 29 00:11:11 UTC 2011: > 0e7e93882dbe7d6994a5598cd1cb310ecc53958054d3df100% of 64 MB 778 kBps > 00m00s Extracting snapshot... done. > Verifying snapshot integrity... > > > backtrace: > db> bt > Tracing pid 42848 tid 100070 td 0xc23ae000 > kdb_enter() at kdb_enter+0x14 > scp=0xc0a68174 rlv=0xc0a3da34 (panic+0xa0) > rsp=0xc85129e0 rfp=0xc85129f4 > r5=0xc0c4933c r4=0x00000100 > panic() at panic+0x1c > scp=0xc0a3d9b0 rlv=0xc0a75480 (turnstile_claim+0x204) > rsp=0xc8512a08 rfp=0xc8512a20 > turnstile_claim() at turnstile_claim+0x104 > scp=0xc0a75380 rlv=0xc0a75608 (turnstile_wait+0x17c) > rsp=0xc8512a24 rfp=0xc8512a48 > r6=0xc182e2a0 r5=0xc23ae000 > r4=0x00000000 > turnstile_wait() at turnstile_wait+0x14 > scp=0xc0a754a0 rlv=0xc0a30848 (_mtx_lock_sleep+0xbc) > rsp=0xc8512a4c rfp=0xc8512a64 > r10=0xc21a4990 r8=0x00000000 > r7=0x00000000 r6=0xc23ae000 r5=0xc182e2a0 r4=0xc0d14780 > _mtx_lock_sleep() at _mtx_lock_sleep+0x14 > scp=0xc0a307a0 rlv=0xc0a30900 (_mtx_lock_flags+0x74) > rsp=0xc8512a68 rfp=0xc8512a84 > r6=0xc0d200c0 r5=0x00000000 > r4=0x00000000 > _mtx_lock_flags() at _mtx_lock_flags+0x10 > scp=0xc0a3089c rlv=0xc0bd5a3c (vm_fault_hold+0x1548) > rsp=0xc8512a88 rfp=0xc8512bb0 > r6=0x0000029c r5=0x00000000 > r4=0x0029c000 > vm_fault_hold() at vm_fault_hold+0x10 > scp=0xc0bd4504 rlv=0xc0bd6080 (vm_fault+0x38) > rsp=0xc8512bb4 rfp=0xc8512bc8 > r10=0x00000002 r9=0xc8512ef8 > r8=0xc8512c70 r7=0xc23ae000 r6=0x20405000 r5=0x00000000 > r4=0x00000002 > vm_fault() at vm_fault+0x10 > scp=0xc0bd6058 rlv=0xc0c02490 (data_abort_handler+0x1e8) > rsp=0xc8512bcc rfp=0xc8512c6c > r4=0xc23a3360 > data_abort_handler() at data_abort_handler+0x10 > scp=0xc0c022b8 rlv=0xc0bf4b38 (address_exception_entry+0x50) > rsp=0xc8512c70 rfp=0x00000000 > r10=0xc8512ef8 r9=0x00000000 > r8=0x00000000 r7=0x00000000 r6=0x00000000 r5=0xffff1004 > r4=0x656b614d > > dmesg.boot (after a reboot): > > KDB: debugger backends: ddb > KDB: current backend: ddb > Copyright (c) 1992-2011 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 9.0-RC1 #5: Sat Oct 29 19:57:58 CEST 2011 > root@t420.crest.dn42:/usr/obj/arm.arm/usr/src/sys/DOCKSTAR arm > CPU: Feroceon 88FR131 rev 1 (Marvell core) > DC enabled IC enabled WB enabled EABT branch prediction enabled > 16KB/32B 4-way Instruction cache > 16KB/32B 4-way write-back-locking-C Data cache > real memory = 134217728 (128 MB) > avail memory = 125227008 (119 MB) > SOC: Marvell 88F6281 rev A0, TClock 200MHz > simplebus0: on fdtbus0 > ic0: mem 0xf1020200-0xf102023b > on simplebus0 timer0: mem 0xf1020300-0xf102032f irq 1 > on simplebus0 Event timer "CPUTimer0" frequency 200000000 Hz quality 1000 > Timecounter "CPUTimer1" frequency 200000000 Hz quality 1000 > gpio0: mem 0xf1010100-0xf101011f irq > 35,36,37,38,39,40,41 on simplebus0 rtc0: mem > 0xf1010300-0xf1010307 on simplebus0 mge0: controller> mem 0xf1072000-0xf1073fff irq 12,13,14,11,46 on simpl ebus0 > mge0: Ethernet address: 02:50:43:91:f7:ea > miibus0: on mge0 > ukphy0: PHY 0 on miibus0 > ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, > 1000baseT-master, 1000b aseT-FDX, 1000baseT-FDX-master, auto uart0: <16550 > or compatible> mem 0xf1012000-0xf101201f irq 33 on simplebus0 uart0: > console (1056,n,8,1) > uart1: <16550 or compatible> mem 0xf1012100-0xf101211f irq 34 on > simplebus0 ehci0: mem > 0xf1050000-0xf1050fff irq 48,19 on simplebus0 usbus0: EHCI version 1.0 > usbus0: set host controller mode > usbus0: on ehci0 > cryptosoft0: on motherboard > Timecounters tick every 1.000 msec > IPsec: Initialized Security Association Processing. > ipfw2 (+ipv6) initialized, divert enabled, nat loadable, rule-based > forwarding enabled, default t o accept, logging disabled DUMMYNET 0 with > IPv6 initialized (100409) > load_dn_sched dn_sched FIFO loaded > load_dn_sched dn_sched PRIO loaded > load_dn_sched dn_sched QFQ loaded > load_dn_sched dn_sched RR loaded > load_dn_sched dn_sched WF2Q+ loaded > usbus0: 480Mbps High Speed USB v2.0 > Root mount waiting for: usbus0 > ugen0.1: at usbus0 > uhub0: on usbus0 > uhub0: 1 port with 1 removable, self powered > Root mount waiting for: usbus0 > ugen0.2: at usbus0 > uhub1: on > usbus0 > > Root mount waiting for: usbus0 > uhub1: 4 ports with 4 removable, self powered > Root mount waiting for: usbus0 > ugen0.3: at usbus0 > umass0: on > usbus0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > da0: Removable Direct Access SCSI-0 device > da0: 40.000MB/s transfers > da0: 1912MB (3915776 512 byte sectors: 255H 63S/T 243C) > ugen0.4: at usbus0 > uaudio0: 1.10/1.00, addr 4> on usbus0 uaudio0: Play: 48000 Hz, 2 ch, 16-bit S-LE > PCM format > uaudio0: Record: 48000 Hz, 1 ch, 16-bit S-LE PCM format > uaudio0: No midi sequencer > pcm0: on uaudio0 > Trying to mount root from ufs:/dev/ufs/root []... > WARNING: / was not properly dismounted > > dmesg (problem reappears after a few seconds): > USB error: address decoding error (addr=0x4190200) > USB error: address decoding error (addr=0x4191000) > USB error: address decoding error (addr=0x41981c0) > USB error: address decoding error (addr=0x4199000) > USB error: address decoding error (addr=0x41a0200) > USB error: address decoding error (addr=0x41a1000) > USB error: address decoding error (addr=0x41a8000) > USB error: address decoding error (addr=0x41a9000) > USB error: address decoding error (addr=0x41b0200) > USB error: address decoding error (addr=0x41b1000) > USB error: address decoding error (addr=0x41b8000) > USB error: address decoding error (addr=0x41b9000) > USB error: address decoding error (addr=0x41c0000) > USB error: address decoding error (addr=0x41c1000) > USB error: address decoding error (addr=0x41c8200) > USB error: address decoding error (addr=0x41c9000) > USB error: address decoding error (addr=0x41ca000) > USB error: address decoding error (addr=0x41d11c0) > USB error: address decoding error (addr=0x41d2000) > USB error: address decoding error (addr=0x41d9100) > USB error: address decoding error (addr=0x41c9000) > USB error: address decoding error (addr=0x41c9000) > ... more of the same format (/usr/src/sys/dev/usb/controller/ehci_mv.c > > kernel config: > # > # Custom kernel for Seagate DockStar (Marvell SheevaPlug based) devices. > # > # $FreeBSD: stable/9/sys/arm/conf/DOCKSTAR 224699 2011-08-07 20:16:46Z > rmacklem $ # > > ident DOCKSTAR > include "../mv/kirkwood/std.sheevaplug" > > options SOC_MV_KIRKWOOD > makeoptions MODULES_OVERRIDE="" > > #makeoptions DEBUG=-g #Build kernel with gdb(1) debug > symbols makeoptions WERROR="-Werror" > > options SCHED_4BSD #4BSD scheduler > options INET #InterNETworking > options INET6 #IPv6 communications protocols > options FFS #Berkeley Fast Filesystem > options NFSCL #New Network Filesystem Client > options NFSLOCKD #Network Lock Manager > options NFS_ROOT #NFS usable as /, requires NFSCL > #options BOOTP > #options BOOTP_NFSROOT > #options BOOTP_NFSV3 > #options BOOTP_COMPAT > #options BOOTP_WIRED_TO=mge0 > > # Root fs on USB device > options ROOTDEVNAME=\"ufs:/dev/ufs/root\" > > options SYSVSHM #SYSV-style shared memory > options SYSVMSG #SYSV-style message queues > options SYSVSEM #SYSV-style semaphores > options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time > extensions options MUTEX_NOINLINE > options RWLOCK_NOINLINE > options NO_FFS_SNAPSHOT > options NO_SWAPPING > > # Debugging > options ALT_BREAK_TO_DEBUGGER > options DDB > options KDB > > # Pseudo devices > device md > device random > device pty > device loop > > # Serial ports > device uart > > # Networking > device ether > device mge # Marvell Gigabit Ethernet > controller device mii > device bpf > options HZ=1000 > options DEVICE_POLLING > device vlan > > # USB > #options USB_DEBUG # enable debug msgs > device usb > device ehci > device uhci > device ohci > device umass > device scbus > device pass > device da > > # Flattened Device Tree > options FDT > options FDT_DTB_STATIC > makeoptions FDT_DTS_FILE=dockstar.dts > > # Crypto > device crypto > options KGSSAPI > > # IPSec > device enc > options IPSEC > options IPSEC_NAT_T > > # Disk Encryption > options GEOM_ELI > > # IPFW support > options IPFIREWALL > options IPFIREWALL_DEFAULT_TO_ACCEPT > options IPFIREWALL_FORWARD > options IPFIREWALL_VERBOSE > options IPFIREWALL_VERBOSE_LIMIT=100 > options DUMMYNET > options IPDIVERT > > # Partition support > options GEOM_PART_BSD > options GEOM_PART_GPT > options GEOM_PART_MBR > options GEOM_LABEL > > # UFS > options UFS_ACL > options UFS_DIRHASH > options SOFTUPDATES > > # FAT support > options MSDOSFS > > # Misc FSs > options PROCFS > options PSEUDOFS > > # Sound > device sound > device snd_uaudio > > >How-To-Repeat: > cd /usr/src > make buildworld buildkernel # tested on amd64 > make buildworld buildkernel TARGET_ARCH=arm KERNCONF=DOCKSTAR > gpart create -s mbr da0 # da0 is a umass dev > gpart add -s 64M -t fat32 -i 1 && newfs_msdos -F 32 -L KERN da0s1 > gpart add -t freebsd && newfs -jLroot > mount -t msdosfs /dev/msdosfs/KERN # use jeff doozans u-boot to boot from > fat32 cp /usr/obj/arm.arm/usr/src/sys/DOCKSTAR/kernel.bin /mnt > umount /mnt > mount /dev/ufs/root /mnt > make installworld distribution TARGET_ARCH=arm DESTDIR=/mnt > dd of=/mnt/etc/rc.conf < hostname="fb9ds.crest.dn42" > ifconfig_mge0="DHCP" > sshd_enable="YES" > ntpdate_enable="YES" > ntpd_enable="YES" > > >Fix: > no known fix/workaround > > >Release-Note: > >Audit-Trail: > > > >Unformatted: > >>EOF > > echo /dev/ufs/root / ufs rw,noatime,noclusterr,noclusterw 1 1 > >/mnt/etc/fstab umount /mnt > # insert usb stick/disk into dockstar, boot and start portsnap fetch > extract. Hi, This looks like an ARM specific error produced by: src/sys/dev/usb/controller/ehci_mbus.c --HPS