Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 30 Oct 2011 20:30:18 GMT
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-arm@FreeBSD.org
Subject:   Re: arm/162159: USB errors leading to panic on DockStar 9.0-RC1/arm
Message-ID:  <201110302030.p9UKUIHY002629@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR arm/162159; it has been noted by GNATS.

From: Hans Petter Selasky <hselasky@c2i.net>
To: freebsd-arm@freebsd.org
Cc: Jan Bramkamp <crest@tzi.de>,
 freebsd-gnats-submit@freebsd.org
Subject: Re: arm/162159: USB errors leading to panic on DockStar 9.0-RC1/arm
Date: Sun, 30 Oct 2011 21:19:35 +0100

 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: <Flattened device tree simple bus> on fdtbus0
 >  ic0: <Marvell Integrated Interrupt Controller> mem 0xf1020200-0xf102023b
 > on simplebus0 timer0: <Marvell CPU Timer> mem 0xf1020300-0xf102032f irq 1
 > on simplebus0 Event timer "CPUTimer0" frequency 200000000 Hz quality 1000
 >  Timecounter "CPUTimer1" frequency 200000000 Hz quality 1000
 >  gpio0: <Marvell Integrated GPIO Controller> mem 0xf1010100-0xf101011f irq
 > 35,36,37,38,39,40,41 on  simplebus0 rtc0: <Marvell Integrated RTC> mem
 > 0xf1010300-0xf1010307 on simplebus0 mge0: <Marvell Gigabit Ethernet
 > controller> mem 0xf1072000-0xf1073fff irq 12,13,14,11,46 on simpl ebus0
 > mge0: Ethernet address: 02:50:43:91:f7:ea
 >  miibus0: <MII bus> on mge0
 >  ukphy0: <Generic IEEE 802.3u media interface> 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: <Marvell Integrated USB 2.0 controller> mem
 > 0xf1050000-0xf1050fff irq 48,19 on simplebus0 usbus0: EHCI version 1.0
 >  usbus0: set host controller mode
 >  usbus0: <Marvell Integrated USB 2.0 controller> on ehci0
 >  cryptosoft0: <software crypto> 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: <Marvell> at usbus0
 >  uhub0: <Marvell EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
 >  uhub0: 1 port with 1 removable, self powered
 >  Root mount waiting for: usbus0
 >  ugen0.2: <vendor 0x05e3> at usbus0
 >  uhub1: <vendor 0x05e3 USB2.0 Hub, class 9/0, rev 2.00/6.03, addr 2> on
 > usbus0
 > 
 >  Root mount waiting for: usbus0
 >  uhub1: 4 ports with 4 removable, self powered
 >  Root mount waiting for: usbus0
 >  ugen0.3: <SMI Corporation> at usbus0
 >  umass0: <SMI Corporation USB DISK, class 0/0, rev 2.00/11.00, addr 3> on
 > usbus0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
 >  da0: <USB Stick 2.0 ME 1100> Removable Direct Access SCSI-0 device
 >  da0: 40.000MB/s transfers
 >  da0: 1912MB (3915776 512 byte sectors: 255H 63S/T 243C)
 >  ugen0.4: <vendor 0x0d8c> at usbus0
 >  uaudio0: <vendor 0x0d8c C-Media USB Headphone Set, class 0/0, rev
 > 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: <USB audio> 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 <<EOF
 >   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



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