From owner-freebsd-arm@FreeBSD.ORG Thu Oct 17 20:59:10 2013 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id B30BE804 for ; Thu, 17 Oct 2013 20:59:10 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from mho-02-ewr.mailhop.org (mho-02-ewr.mailhop.org [204.13.248.72]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 758522224 for ; Thu, 17 Oct 2013 20:59:10 +0000 (UTC) Received: from c-24-8-230-52.hsd1.co.comcast.net ([24.8.230.52] helo=damnhippie.dyndns.org) by mho-02-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1VWuez-0005Qa-Hi; Thu, 17 Oct 2013 20:59:09 +0000 Received: from [172.22.42.240] (revolution.hippie.lan [172.22.42.240]) by damnhippie.dyndns.org (8.14.3/8.14.3) with ESMTP id r9HKx60n029996; Thu, 17 Oct 2013 14:59:06 -0600 (MDT) (envelope-from ian@FreeBSD.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 24.8.230.52 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX19++Gw/5lLuMzqHlUyoHAAs Subject: Re: umass not probed until multi-user on 11-CURRENT From: Ian Lepore To: Paul Mather In-Reply-To: <62147506-E78E-4C43-A98D-4049640F361C@gromit.dlib.vt.edu> References: <62147506-E78E-4C43-A98D-4049640F361C@gromit.dlib.vt.edu> Content-Type: text/plain; charset="us-ascii" Date: Thu, 17 Oct 2013 14:59:05 -0600 Message-ID: <1382043545.1168.153.camel@revolution.hippie.lan> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit Cc: "freebsd-arm@freebsd.org" X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Oct 2013 20:59:10 -0000 On Thu, 2013-10-17 at 08:53 -0400, Paul Mather wrote: > I just created a new image for my BeagleBone Black using Crochet. I'm using the standard BEAGLEBONE kernel config file. The source is FreeBSD 11.0-CURRENT r256450. Unlike previously, now when I boot my BBB it does not probe umass devices until after it goes multiuser. This has created a problem because I am using an external USB hard drive for swap, /usr/src, /usr/obj, and /usr/ports. Because of the new probe order, the devices referenced in /etc/fstab don't exist and the system drops into single-user. E.g.: > > 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 #0 r256450: Mon Oct 14 21:19:01 EDT 2013 > pmather@builder:/usr/home/pmather/crochet-freebsd/work/obj/arm.armv6/usr/src/sys/BEAGLEBONE arm > FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610 > WARNING: WITNESS option enabled, expect reduced performance. > 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 = 536870912 (512 MB) > avail memory = 515653632 (491 MB) > Texas Instruments AM3358 Processor, Revision ES1.1 > random device not loaded; using insecure entropy > random: initialized > simplebus0: on fdtbus0 > aintc0: mem 0x48200000-0x48200fff on simplebus0 > aintc0: Revision 5.0 > ti_scm0: mem 0x44e10000-0x44e11fff on simplebus0 > am335x_prcm0: mem 0x44e00000-0x44e012ff on simplebus0 > am335x_prcm0: Clocks: System 24.0 MHz, CPU 550 MHz > am335x_dmtimer0: 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 > Timecounter "AM335x Timecounter" frequency 24000000 Hz quality 1000 > Event timer "AM335x Eventtimer0" frequency 24000000 Hz quality 1000 > gpio0: mem 0x44e07000-0x44e07fff,0x4804c000-0x4804cfff,0x481ac000-0x481acfff,0x481ae000-0x481aefff irq 96,97,98,99,32,33,62,63 on simplebus0 > gpioc0: on gpio0 > gpiobus0: on gpio0 > uart0: mem 0x44e09000-0x44e09fff irq 72 on simplebus0 > uart0: console (115384,n,8,1) > ti_edma30: mem 0x49000000-0x490fffff,0x49800000-0x498fffff,0x49900000-0x499fffff,0x49a00000-0x49afffff irq 12,13,14 on simplebus0 > ti_edma30: EDMA revision 40014c00 > sdhci_ti0: mem 0x48060000-0x48060fff irq 64 on simplebus0 > mmc0: on sdhci_ti0 > sdhci_ti1: mem 0x481d8000-0x481d8fff irq 28 on simplebus0 > mmc1: on sdhci_ti1 > cpsw0: <3-port Switch Ethernet Subsystem> mem 0x4a100000-0x4a103fff irq 40,41,42,43 on simplebus0 > cpsw0: CPSW SS Version 1.12 (0) > cpsw0: Initial queue size TX=128 RX=384 > cpsw0: Ethernet address: 90:59:af:55:26:eb > miibus0: on cpsw0 > smscphy0: PHY 0 on miibus0 > smscphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > iichb0: mem 0x44e0b000-0x44e0bfff irq 70 on simplebus0 > iichb0: I2C revision 4.0 > iicbus0: on iichb0 > iic0: on iicbus0 > am335x_pmic0: at addr 0x24 on iicbus0 > am335x_pwm0: mem 0x48300000-0x483000ff,0x48300100-0x4830017f,0x48300180-0x483001ff,0x48300200-0x4830025f irq 86,58 on simplebus0 > am335x_pwm1: mem 0x48302000-0x483020ff,0x48302100-0x4830217f,0x48302180-0x483021ff,0x48302200-0x4830225f irq 87,59 on simplebus0 > am335x_pwm2: mem 0x48304000-0x483040ff,0x48304100-0x4830417f,0x48304180-0x483041ff,0x48304200-0x4830425f irq 88,60 on simplebus0 > musbotg0: mem 0x47400000-0x47400fff,0x47401000-0x474012ff,0x47401300-0x474013ff,0x47401400-0x474017ff,0x47401800-0x47401aff,0x47401b00-0x47401bff,0x47401c00-0x47401fff irq 17,18,19 on simplebus0 > musbotg0: TI AM335X USBSS v0.0.13 > usbus0: Dynamic FIFO sizing detected, assuming 16Kbytes of FIFO RAM > usbus0 on musbotg0 > usbus1: Dynamic FIFO sizing detected, assuming 16Kbytes of FIFO RAM > usbus1 on musbotg0 > Timecounters tick every 10.000 msec > usbus0: 480Mbps High Speed USB v2.0 > usbus1: 480Mbps High Speed USB v2.0 > ugen0.1: at usbus0 > uhub0: on usbus0 > ugen1.1: at usbus1 > uhub1: on usbus1 > mmcsd0: 16GB at mmc0 48.0MHz/4bit/65535-block > uhub0: 1 port with 1 removable, self powered > uhub1: 1 port with 1 removable, self powered > mmcsd1: 2GB at mmc1 48.0MHz/8bit/65535-block > am335x_pmic0: TPS65217C ver 1.2 powered by AC > random: unblocking device. > WARNING: WITNESS option enabled, expect reduced performance. > Trying to mount root from ufs:/dev/mmcsd0s2a [rw,noatime]... > warning: no time-of-day clock registered, system time will not be set accurately > Enlarging root partition > mmcsd0s2 resized > mmcsd0s2a resized > growfs: requested size 15GB is not larger than the current filesystem size 15GB > Setting hostuuid: de51addd-3538-11e3-8cc8-9059af5526eb. > Setting hostid: 0x4421ab53. > No suitable dump device was found. > Entropy harvesting: interrupts ethernet point_to_point swi. > swapon: /dev/da0s1a: No such file or directory > Starting file system checks: > /dev/mmcsd0s2a: FILE SYSTEM CLEAN; SKIPPING CHECKS > /dev/mmcsd0s2a: clean, 3670983 free (927 frags, 458757 blocks, 0.0% fragmentation) > Can't stat /dev/ufs/ports: No such file or directory > Can't stat /dev/ufs/src: No such file or directory > Can't stat /dev/ufs/obj: No such file or directory > Can't stat /dev/ufs/ports: No such file or directory > Can't stat /dev/ufs/src: No such file or directory > Can't stat /dev/ufs/obj: No such file or directory > THE FOLLOWING FILE SYSTEMS HAD AN UNEXPECTED INCONSISTENCY: > ufs: /dev/ufs/src (/usr/src), ufs: /dev/ufs/ports (/usr/ports), ufs: /dev/ufs/obj (/usr/obj) > Unknown error; help! > ERROR: ABORTING BOOT (sending SIGTERM to parent)! > Oct 16 20:38:19 init: /bin/sh on /etc/rc terminated abnormally, going to single user mode^M > Enter full pathname of shell or RETURN for /bin/sh: ugen1.2: at usbus1 > umass0: on usbus1 > umass0: SCSI over Bulk-Only; quirks = 0x4100 > umass0:0:0:-1: Attached to scbus0 > da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > da0: Fixed Direct Access SCSI-0 device > da0: 40.000MB/s transfers > da0: 286103MB (585938944 512 byte sectors: 255H 63S/T 36473C) > da0: quirks=0x2 > > # ls /dev/ufs > obj ports src > # > > > I know I could work around the problem by adding "late" to the /etc/fstab options for the file systems that are causing the boot to fail. I'm not sure whether this also works for swap, though. > > Is this an expected behaviour now? My Raspberry Pi, still running FreeBSD 10.0-ALPHA1 r255586 probes umass devices before the "Trying to mount root from ufs:/dev/mmcsd0s2a [rw,noatime]..." point, e.g.: > > [...] > ugen0.3: at usbus0 > smsc0: on usbus0 > smsc0: chip 0xec00, rev. 0002 > miibus0: on smsc0 > ukphy0: PHY 1 on miibus0 > ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > ue0: on smsc0 > ue0: Ethernet address: b8:27:eb:7b:95:7d > smsc0: chip 0xec00, rev. 0002 > Sending DHCP Discover packet from interface ue0 (b8:27:eb:7b:95:7d) > ugen0.4: at usbus0 > umass0: on usbus0 > da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > da0: Fixed Direct Access SCSI-0 device > da0: 40.000MB/s transfers > da0: 286168MB (586072368 512 byte sectors: 255H 63S/T 36481C) > da0: quirks=0x2 > Received DHCP Offer packet on ue0 from 10.23.5.1 (accepted) > Received DHCP Offer packet on ue0 from 10.23.5.1 (ignored) > Received DHCP Offer packet on ue0 from 10.23.5.1 (ignored) > Sending DHCP Request packet from interface ue0 (b8:27:eb:7b:95:7d) > Received DHCP Ack packet on ue0 from 10.23.5.1 (accepted) > ue0 at 10.23.5.55 server 10.23.5.1 > subnet mask 255.255.255.0 router 10.23.5.1 hostname pi > Adjusted interface ue0 > Trying to mount root from ufs:/dev/mmcsd0s2a [rw,noatime]... > warning: no time-of-day clock registered, system time will not be set accurately > Once you've dropped into single-user mode, what's the value of sysctl hw.usb.no_boot_wait? It's supposed to wait for usb enumeration before mounting the root filesystem, unless that tunable is set to 1. -- Ian