From owner-freebsd-usb@FreeBSD.ORG Tue Feb 17 01:37:25 2009 Return-Path: Delivered-To: usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 38B77106564A for ; Tue, 17 Feb 2009 01:37:25 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from asmtpout014.mac.com (asmtpout014.mac.com [17.148.16.89]) by mx1.freebsd.org (Postfix) with ESMTP id 246348FC13 for ; Tue, 17 Feb 2009 01:37:25 +0000 (UTC) (envelope-from xcllnt@mac.com) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Received: from [192.168.4.253] (xcllnt.net [75.101.29.67]) by asmtp014.mac.com (Sun Java(tm) System Messaging Server 6.3-7.03 (built Aug 7 2008; 32bit)) with ESMTPSA id <0KF600BOESIB4F00@asmtp014.mac.com> for usb@freebsd.org; Mon, 16 Feb 2009 17:37:25 -0800 (PST) Message-id: <6E9B5FF6-685B-427C-87A7-C95850DA5B6F@mac.com> From: Marcel Moolenaar To: "M. Warner Losh" In-reply-to: <20090216.173544.1555327603.imp@bsdimp.com> Date: Mon, 16 Feb 2009 17:37:22 -0800 References: <20090216.161346.1176917525.imp@bsdimp.com> <741FAA3B-B91A-4A23-B47F-21141A8D0B5D@mac.com> <20090216.173544.1555327603.imp@bsdimp.com> X-Mailer: Apple Mail (2.930.3) Cc: usb@freebsd.org Subject: Re: USB2+umass: root mount fails X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Feb 2009 01:37:25 -0000 On Feb 16, 2009, at 4:35 PM, M. Warner Losh wrote: > In message: <741FAA3B-B91A-4A23-B47F-21141A8D0B5D@mac.com> > Marcel Moolenaar writes: > : > : On Feb 16, 2009, at 3:13 PM, M. Warner Losh wrote: > : > : > In message: > : > Marcel Moolenaar writes: > : > : Before I dig into the code, what's the current status of > : > : root mounts on USB mass storage devices? > : > > : > First, there's a kludge-o-round that is similar to your "sleep 10" > : > that you've added. It loops waiting for more devices to show up > if > : > the desired root file system hasn't appeared yet. > : > > : > There's no way for hot-plug busses to tell the kernel "I've > tried my > : > best to enumerate everything on my bus, and I'm done" > : > : Of course there is. Any and all USB hubs have a certain > : number of ports. You can trivially iterate over all of > : them and declare completion when you've tried them all. > > The hot-plug busses know. The mountroot code doesn't have a way to > wait for the hot-plug busses. Huh? root_mount_hold() and root_mount_rel() are specifically designed to inform the mountroot code that it needs to wait (or that it should go ahead and mount root). -- Marcel Moolenaar xcllnt@mac.com