Date: Sat, 3 Jan 2015 03:37:14 +0100 From: Bernd Walter <ticso@cicely7.cicely.de> To: "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org> Cc: Bernd Walter <ticso@cicely7.cicely.de> Subject: USB stability problem on AR9331 with stable/10 Message-ID: <20150103023713.GB3265@cicely7.cicely.de>
next in thread | raw e-mail | index | archive | help
This happens on Carambola 2 as well as on a Dragino system. Both are using the AR9331 SoC with 64MB RAM. I'd used the freebsd-wifi-build-read-only build, but I'm not using the memory disk setup, instead I'd setup rootfs on an USB stick. Plus I use NFS for /usr/ports, /usr/obj, 256MB swapfile and /tmp I'd tried different sticks with same result. Under normal load everything seems to run fine. No I want to install some ports - requiring ports-mgmt/pkg as prerequisite, which is quite big to compile and at some point the USB stick errors out. login: Jan 2 18:03:51 apx2 msu[831]: accepted ticso to root (da0:umass-sim0:0:0:0): . CDB: 28 00 00 7c 3d 00 00 00 48 00 (da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error (da0:umass-sim0:0:0:0): Retrying command (da0:umass-sim0:0:0:0): . CDB: 28 00 00 7c 3d 00 00 00 48 00 (da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error (da0:umass-sim0:0:0:0): Retrying command (da0:umass-sim0:0:0:0): . CDB: 28 00 00 7c 3d 00 00 00 48 00 (da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error (da0:umass-sim0:0:0:0): Retrying command (da0:umass-sim0:0:0:0): . CDB: 28 00 00 7c 3d 00 00 00 48 00 (da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error (da0:umass-sim0:0:0:0): Retrying command (da0:umass-sim0:0:0:0): . CDB: 28 00 00 7c 3d 00 00 00 48 00 (da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error (da0:umass-sim0:0:0:0): Error 5, Retries exhausted g_vfs_done():da0a[READ(offset=4171210752, length=12288)]error = 5 g_vfs_done():da0a[READ(offset=1361854464, length=12288)]error = 5 g_vfs_done():da0a[READ(offset=4019220480, length=61440)]error = 5 g_vfs_done():da0a[READ(offset=4151885824, length=65536)]error = 5 g_vfs_done():da0a[READ(offset=4168736768, length=36864)]error = 5 vnode_pager_getpages: I/O read error vm_fault: pager read error, pid 570 (syslogd) ... Bootmessages on a Dragino, on which I'm currently testing: ********************************************* * U-Boot 1.1.4 (Jun 3 2014) * ********************************************* AP121 (AR9331) U-Boot for Dragino v2 MS14 DRAM: 64 MB DDR 16-bit FLASH: Winbond W25Q128 (16 MB) CLOCKS: 400/400/200/33 MHz (CPU/RAM/AHB/SPI) LED on during eth initialization... Hit any key to stop autobooting: 0 Booting image at: 0x9F050000 Image name: FreeBSD Created: 2015-01-02 12:27:56 UTC Image type: MIPS Linux Kernel Image (lzma compressed) Data size: 1523753 Bytes = 1.5 MB Load address: 0x80050000 Entry point: 0x80050100 Uncompressing kernel image... OK! Starting kernel... CPU platform: Atheros AR9330 rev 1 CPU Frequency=400 MHz CPU DDR Frequency=400 MHz CPU AHB Frequency=200 MHz platform frequency: 400000000 CPU reference clock: 25 MHz arguments: a0 = 00000007 a1 = a3ec3fac a2 = a3ec4850 a3 = 00000010 Cmd line:argv is invalid Environment: envp is invalid Cache info: picache_stride = 4096 picache_loopcount = 16 pdcache_stride = 4096 pdcache_loopcount = 8 cpu0: MIPS Technologies processor v116.147 MMU: Standard TLB, 16 entries L1 i-cache: 4 ways of 512 sets, 32 bytes per line L1 d-cache: 4 ways of 256 sets, 32 bytes per line Config1=0x9ee3519e<PerfCount,WatchRegs,MIPS16,EJTAG> Config3=0x20 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 10.1-STABLE #0 r276531M: Fri Jan 2 12:50:27 CET 2015 ticso@cicely1.cicely.de:/home/builder/carambola2/obj/mips/mips.mips/home/builder/carambola2/10/sys/CARAMBOLA2 mips gcc version 4.2.1 20070831 patched [FreeBSD] real memory = 67108864 (65536K bytes) avail memory = 58490880 (55MB) random device not loaded; using insecure entropy random: <Software, Yarrow> initialized nexus0: <MIPS32 root nexus> clock0: <Generic MIPS32 ticker> on nexus0 Timecounter "MIPS32" frequency 200000000 Hz quality 800 Event timer "MIPS32" frequency 200000000 Hz quality 800 argemdio0: <Atheros AR71xx built-in ethernet interface, MDIO controller> at mem 0x1a000000-0x1a000fff on nexus0 mdio0: <MDIO> on argemdio0 mdioproxy0: <MII/MDIO proxy, MDIO side> on mdio0 arswitch0: <Atheros AR7240 Ethernet Switch> on mdio0 miibus0: <MII bus> on arswitch0 ukphy0: <Generic IEEE 802.3u media interface> PHY 0 on miibus0 ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto miibus1: <MII bus> on arswitch0 ukphy1: <Generic IEEE 802.3u media interface> PHY 1 on miibus1 ukphy1: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto miibus2: <MII bus> on arswitch0 ukphy2: <Generic IEEE 802.3u media interface> PHY 2 on miibus2 ukphy2: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto miibus3: <MII bus> on arswitch0 ukphy3: <Generic IEEE 802.3u media interface> PHY 3 on miibus3 ukphy3: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto etherswitch0: <Switch controller> on arswitch0 mdio1: <MDIO> on arswitch0 mdioproxy1: <MII/MDIO proxy, MDIO side> on mdio1 apb0 at irq 4 on nexus0 uart0: <ar933x> on apb0 uart0: console (115200,n,8,1) gpio0: <Atheros AR71XX GPIO driver> on apb0 gpio0: [GIANT-LOCKED] gpio0: function_set: 0x0 gpio0: function_clear: 0x0 gpio0: gpio pinmask=0x1803 gpioc0: <GPIO controller> on gpio0 gpiobus0: <GPIO bus> on gpio0 gpioled0: <GPIO led> at pin(s) 0 on gpiobus0 gpioled1: <GPIO led> at pin(s) 1 on gpiobus0 ehci0: <AR71XX Integrated USB 2.0 controller> at mem 0x1b000100-0x1bffffff irq 1 on nexus0 usbus0: set host controller mode usbus0: EHCI version 1.0 usbus0: set host controller mode usbus0 on ehci0 arge0: <Atheros AR71xx built-in ethernet interface> at mem 0x19000000-0x19000fff irq 2 on nexus0 miiproxy0: <MII/MDIO proxy, MII side> on arge0 miiproxy0: attached to target mdio1 arge0: finishing attachment, phymask 0010, proxy set miibus4: <MII bus> on miiproxy0 ukphy4: <Generic IEEE 802.3u media interface> PHY 4 on miibus4 ukphy4: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT-FDX, 1000baseT-FDX-master, auto arge0: Ethernet address: 62:73:64:71:f1:8e arge1: <Atheros AR71xx built-in ethernet interface> at mem 0x1a000000-0x1a000fff irq 3 on nexus0 arge1: finishing attachment, phymask 0000, proxy null arge1: Ethernet address: 62:73:64:c0:e7:37 ath0: Vendor=0x168c, Device=0x0035 ath0: Vendor=0x168c, Device=0x0035 ath0: <Atheros AR933x> at mem 0x18100000-0x1811ffff irq 0 on nexus0 ath0: eeprom @ 0x1fff0000 (16384 bytes) ath0: eeprom data @ 0xbfff0000 ar9300_set_stub_functions: setting stub functions ar9300_set_stub_functions: setting stub functions Bootstrap clock 25MHz ar9300_attach: calling ar9300_hw_attach ar9300_hw_attach: calling ar9300_eeprom_attach ar9300_flash_map: unimplemented for now Restoring Cal data from DRAM ar9300_hw_attach: ar9300_eeprom_attach returned 0 ath0: RX status length: 48 ath0: RX buffer size: 4096 ath0: TX descriptor length: 128 ath0: TX status length: 36 ath0: TX buffers per descriptor: 4 ar9300_freebsd_setup_x_tx_desc: called, 0x0/0, 0x0/0, 0x0/0 ath0: ath_edma_setup_rxfifo: type=0, FIFO depth = 16 entries ath0: ath_edma_setup_rxfifo: type=1, FIFO depth = 128 entries ath0: [HT] enabling HT modes ath0: [HT] enabling short-GI in 20MHz mode ath0: [HT] 1 stream STBC receive enabled ath0: [HT] 1 RX streams; 1 TX streams ath0: AR9330 mac 512.1 RF5110 phy 2275.1 ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0000 spi0: <AR71XX SPI> at mem 0x1f000000-0x1f00000f on nexus0 spibus0: <spibus bus> on spi0 mx25l0: <M25Pxx Flash Family> at cs 0 on spibus0 mx25l0: w25q128, sector 65536 bytes, 256 sectors ar71xx_wdog0: <Atheros AR71XX watchdog timer> on nexus0 Timecounters tick every 1.000 msec arswitch0port1: link state changed to DOWN arswitch0port2: link state changed to DOWN arswitch0port3: link state changed to DOWN arswitch0port4: link state changed to DOWN usbus0: 480Mbps High Speed USB v2.0 ugen0.1: <Atheros> at usbus0 uhub0: <Atheros EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0 random: unblocking device. Root mount waiting for: usbus0 uhub0: 1 port with 1 removable, self powered arswitch0port1: link state changed to UP Root mount waiting for: usbus0 ugen0.2: <GenesysLogic> at usbus0 uhub1: <GenesysLogic USB2.0 Hub, class 9/0, rev 2.10/4.01, addr 2> on usbus0 uhub1: MTT enabled Root mount waiting for: usbus0 uhub1: 4 ports with 0 removable, self powered ugen0.3: <Alcor Tech> at usbus0 umass0: <Alcor Tech Intenso Rainbow Line, class 0/0, rev 2.00/1.12, addr 3> on usbus0 umass0: SCSI over Bulk-Only; quirks = 0x4101 umass0:0:0:-1: Attached to scbus0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 da0: <Intenso Rainbow Line 8.05> Fixed Direct Access SCSI-4 device da0: Serial Number 14022600001415 da0: 40.000MB/s transfers da0: 60000MB (122880000 512 byte sectors: 255H 63S/T 7648C) da0: quirks=0x2<NO_6_BYTE> Trying to mount root from ufs:da0a []... WARNING: / was not properly dismounted warning: no time-of-day clock registered, system time will not be set accurately Setting hostuuid: b7150377-92a0-11e4-82f7-b97c4c6ba68a. Setting hostid: 0xd75b006b. Entropy harvesting: interrupts ethernet point_to_point swi. swapon: mdconfig (attach) error: md99 on file=/home/swap0 Starting file system checks: /dev/da0a: 11733 files, 76619 used, 14800282 free (242 frags, 1850005 blocks, 0.0% fragmentation) Mounting local file systems:. Writing entropy file:. ... In a recent USB problem case I have had top running and since the system didn't panic it got updated: last pid: 4488; load averages: 0.79, 0.66, 0.70 up 0+00:27:20 02:19:42 64 processes: 2 running, 35 sleeping, 15 zombie, 12 waiting CPU: 1.5% user, 0.0% nice, 3.1% system, 0.0% interrupt, 95.4% idle Mem: 3964K Active, 2132K Inact, 19M Wired, 444K Cache, 15M Buf, 31M Free Swap: 256M Total, 5072K Used, 251M Free, 1% Inuse PID USERNAME PRI NICE SIZE RES STATE TIME WCPU COMMAND 10 root 155 ki31 0K 8K RUN 13:28 92.82% idle 2 root -8 - 0K 16K - 0:19 1.95% cam{doneq0} 1 root -16 0 9240K 16K vnread 0:18 1.90% init 842 root 40 0 11924K 732K RUN 0:40 1.03% top 11 root -92 - 0K 96K WAIT 3:38 0.00% intr{int3 arge1} 753 root -8 - 0K 8K mdwait 1:20 0.00% md99 13 root -16 - 0K 8K - 0:25 0.00% rand_harvestq 12 root -8 - 0K 24K - 0:06 0.00% geom{g_up} 11 root -92 - 0K 96K WAIT 0:06 0.00% intr{int0 ath0} 4 root -16 - 0K 8K psleep 0:05 0.00% pagedaemon 0 root -16 0 0K 56K swapin 0:05 0.00% kernel{swapper} 0 root -92 0 0K 56K - 0:04 0.00% kernel{ath0 taskq} 11 root -60 - 0K 96K WAIT 0:02 0.00% intr{swi4: clock} 12 root -8 - 0K 24K - 0:01 0.00% geom{g_down} 14 root -72 - 0K 32K - 0:01 0.00% usb{usbus0} 831 ticso 40 0 17884K 416K select 0:01 0.00% sshd 11 root -88 - 0K 96K WAIT 0:01 0.00% intr{int1 ehci0} 566 root 8 0 10192K 768K nanslp 0:01 0.00% mount_nfs 828 root 41 0 17884K 8K select 0:01 0.00% sshd 839 root 16 0 11392K 8K pause 0:01 0.00% tcsh 833 ticso 16 0 11392K 8K pause 0:00 0.00% tcsh 16 root -16 - 0K 8K - 0:00 0.00% schedcpu 11 root -76 - 0K 96K WAIT 0:00 0.00% intr{swi0: uart} 9 root 16 - 0K 8K syncer 0:00 0.00% syncer 14 root -68 - 0K 32K - 0:00 0.00% usb{usbus0} 14 root -68 - 0K 32K - 0:00 0.00% usb{usbus0} 7 root -16 - 0K 16K sdflus 0:00 0.00% bufdaemon{/ worker} 7 root -16 - 0K 16K psleep 0:00 0.00% bufdaemon{bufdaemon} 8 root -4 - 0K 8K vlruwt 0:00 0.00% vnlru 0 root -92 0 0K 56K - 0:00 0.00% kernel{ath0 net80211 ta} 11 root -52 - 0K 96K WAIT 0:00 0.00% intr{swi6: task queue} 778 smmsp 16 0 13952K 8K pause 0:00 0.00% sendmail 12 root -8 - 0K 24K - 0:00 0.00% geom{g_event} 0 root 8 0 0K 56K - 0:00 0.00% kernel{thread taskq} 2 root -8 - 0K 16K - 0:00 0.00% cam{scanner} 3 root -8 - 0K 8K jobque 0:00 0.00% task: mx25l flash 11 root -72 - 0K 96K WAIT 0:00 0.00% intr{swi1: netisr 0} 6 root 155 ki31 0K 8K pgzero 0:00 0.00% pagezero 0 root -8 0 0K 56K - 0:00 0.00% kernel{CAM taskq} 14 root -68 - 0K 32K - 0:00 0.00% usb{usbus0} 5 root 16 - 0K 8K psleep 0:00 0.00% vmdaemon 15 root 8 - 0K 8K aldslp 0:00 0.00% ALQ Daemon 0 root 8 0 0K 56K - 0:00 0.00% kernel{ffs_trim taskq} Nothing obvious beside that obviously a big process died, but since it also kicked out the compiling ssh-session. My local tree changes: [62]cicely1# svn diff Index: sys/mips/conf/AR933X_BASE =================================================================== --- sys/mips/conf/AR933X_BASE (revision 276531) +++ sys/mips/conf/AR933X_BASE (working copy) @@ -29,17 +29,17 @@ options SCHED_4BSD #4BSD scheduler options INET #InterNETworking -#options INET6 #InterNETworking -#options NFSCL #Network Filesystem Client +options INET6 #InterNETworking +options NFSCL #Network Filesystem Client options PSEUDOFS #Pseudo-filesystem framework options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions # Don't include the SCSI/CAM strings in the default build -options SCSI_NO_SENSE_STRINGS -options SCSI_NO_OP_STRINGS +#options SCSI_NO_SENSE_STRINGS +#options SCSI_NO_OP_STRINGS # .. And no sysctl strings -options NO_SYSCTL_DESCR +#options NO_SYSCTL_DESCR # Limit IO size options NBUF=128 @@ -59,7 +59,7 @@ #options WITNESS #options WITNESS_SKIPSPIN options FFS #Berkeley Fast Filesystem -#options SOFTUPDATES #Enable FFS soft updates support +options SOFTUPDATES #Enable FFS soft updates support #options UFS_ACL #Support for access control lists #options UFS_DIRHASH #Improve performance on big directories options NO_FFS_SNAPSHOT # We don't require snapshot support @@ -122,3 +122,6 @@ device if_bridge device gpio device gpioled + +device gif +device vlan Index: sys/mips/conf/CARAMBOLA2 =================================================================== --- sys/mips/conf/CARAMBOLA2 (revision 276531) +++ sys/mips/conf/CARAMBOLA2 (working copy) @@ -43,11 +43,13 @@ options AR71XX_ENV_UBOOT # uzip - to boot natively from flash -device geom_uncompress -options GEOM_UNCOMPRESS +#device geom_uncompress +#options GEOM_UNCOMPRESS # Used for the static uboot partition map -device geom_map +#device geom_map # Boot off of the rootfs, as defined in the geom_map setup. -options ROOTDEVNAME=\"ufs:map/rootfs.uncompress\" +#options ROOTDEVNAME=\"ufs:map/rootfs.uncompress\" +options ROOTDEVNAME=\"ufs:da0a\" + -- B.Walter <bernd@bwct.de> http://www.bwct.de Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150103023713.GB3265>