Date: Thu, 16 Apr 2009 15:53:02 -0700 From: Marcus Reid <marcus@blazingdot.com> To: Andrew Thompson <thompsa@FreeBSD.org> Cc: freebsd-current@freebsd.org, Nenhum_de_Nos <matheus@eternamente.info>, Robert Noland <rnoland@FreeBSD.org> Subject: Re: Booting from usb hard disk Message-ID: <20090416225302.GA39766@blazingdot.com> In-Reply-To: <20090330061036.GA83528@citylink.fud.org.nz> References: <1237804575.1771.7.camel@balrog.2hip.net> <fd2392216bb33e5b66f8fe79459e45e2.squirrel@cygnus.homeunix.com> <1237884572.1771.28.camel@balrog.2hip.net> <20090330061036.GA83528@citylink.fud.org.nz>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Mar 29, 2009 at 11:10:36PM -0700, Andrew Thompson wrote: > On Tue, Mar 24, 2009 at 03:49:32AM -0500, Robert Noland wrote: > > On Mon, 2009-03-23 at 19:40 -0300, Nenhum_de_Nos wrote: > > > On Mon, March 23, 2009 07:36, Robert Noland wrote: > > > > So I have my i386 install on a usb hard disk, which I can only boot on > > > > one machine now. The one machine that I can make work has a bios option > > > > that reads "BIOS ehci handoff". This used to work with the old usb > > > > stack. The machines that it doesn't work on, boot the kernel, but fail > > > > to mount root, giving me the forbidding mountroot> prompt, which is > > > > immediately followed by the message saying that da0 is attached. da0 is > > > > however not listed in the available boot devices list. I tried playing > > > > around with the timeout in vfs_mount.c, but that didn't seem to have any > > > > impact. It has been suggested that this may be a "geom" timeout, but I > > > > don't know anything about the boot system really. > > > > > > I had problem a while ago with via mini itx hardware, that was quite > > > close. If I try boot from usb (installed in usb hdd), I get to the point > > > of loader not finding my disk. > > > > > > I then used a small flash disk attached to the ata (44 pin ide) channel > > > and formatted /boot in there. this way I get to the point of mount root > > > you said, and da0 not being alive soon enough to mount root. list disks > > > also couldn't find da0 though. > > > > > > I tried current from that time, and no good. > > > > > > if this is solved, I'll be happy to try whatever patch to current. (as > > > long as I can install it from another box/or its ata channel, as it can't > > > boot vanilla 7.1R) > > > > So, my solution was to set kern.cam.scsi_delay=10000 > > in /boot/loader.conf > > The following patch should work. It creates interleaving root hold > tokens from the CAM probe to disk_create and geom providor tasting. > I had to add a malloc type flag as sleeping isnt allowed at the point I > added the token alloc in CAM. > > http://people.freebsd.org/~thompsa/root_wait.diff > > It needs review by the various geom/cam ppls. I'm running up against the problems booting from USB that are (somewhat) fixed by your patch. I noticed that it was comitted but reverted due to not being the correct approach. Setting kern.cam.scsi_delay=10000 doesn't work for me either. Is there another way to work around it? Thanks, Marcus
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090416225302.GA39766>