Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Aug 2003 11:18:09 -0400
From:      Eric Jacobs <eaja@erols.com>
To:        John-Mark Gurney <gurney_j@efn.org>, freebsd-current@freebsd.org
Subject:   Re: usbd does not use detach
Message-ID:  <20030815111809.06960905.eaja@erols.com>
In-Reply-To: <20030814173807.GR10708@funkthat.com>
References:  <1059835661.1198.7.camel@Twoflower.liebende.de> <1060185309.676.1.camel@Twoflower.liebende.de> <1060504397.777.15.camel@syrenna.deep-ocean.local> <20030814110113.4d238ddd.eaja@erols.com> <20030814173807.GR10708@funkthat.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 14 Aug 2003 10:38:07 -0700
John-Mark Gurney <gurney_j@efn.org> wrote:

> 
> This is a bit more complex than this.  There are many more layers between
> usb and VFS.  For USB umass devices, they proxy to cam, which then is an
> interface to da which is a provider for geom which then provides the
> final device for ufs to mount.  So, each and every one of those steps
> need to be taught about this.  Right now, very few things use newbus
> even though they should.  This is a problem of them existing before
> newbus was nailed down.  CAM doesn't use newbus for any of it's device
> management (scsi device, not HBA attachment).

Yes, I'm aware that there are more layers. Propogating the flag value
down is trivial. The major deficiency of CAM and GEOM is that errors
can't be sent back up. For example, we have this scenario:

# mount /dev/da0s1a /mnt          # mounting a USB hard drive
# cd /mnt                         # in use
# kldunload umass                 # oops! it succeeds
#

Ideally, I'd love to see an enhanced newbus provide the One True
Framework for attaching and detaching both devices and device
clients. Unfortunately, it seems like it would take a substantial
redesign to get there from this point.

Eric



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