devd limitations / automounting removable storage
Robert Watson
rwatson at freebsd.org
Wed Sep 17 13:21:27 PDT 2003
On Wed, 17 Sep 2003, Poul-Henning Kamp wrote:
> In message <XFMail.20030917143601.jhb at FreeBSD.org>, John Baldwin writes:
>
> >Maybe have GEOM send events when mountable entities show up?
>
> There is only one question to figure out: Should it happen at the
> bottom or the top of GEOM ?
>
> At the bottom, your CF card would result in a single event on /dev/ad4,
> at the top you'd likely get two events, one for /dev/ad4 and one for
> /dev/ad4s1 (or whatever other gadgets geom autodiscovers).
>
> Apart from that, it's just a matter of telling me how to send the
> event...
This is a very similar concern to the question I raised at BSDCon about
distinguishing network interfaces at the newbus and network service
levels. My temptation would be to assign a "layer" as well as a device
name to devices when they are announced. I.e.,
Layer Device Meaning
newbus xl0 A device named xl0 is now available
devfs net/xl0 A device node named net/xl0 is now available
ifnet xl0 A network interface named xl0 is now available
newbus ad0 A device named ad0 is now available
devfs ad0 A device node named ad0 is now available
geom ad0 A storage device named ad0 is now available
We might skip the devfs layer since it's probably implicit in the
completion of ifnet_attach() and disk_create(), but it's worth thinking
about. This would allow ifconfig commands to be issued once the network
device is available, rather than once newbus has attached an xl0. Or for
geom to announce ad0s1e even though newbus doesn't know about it. Or for
devd to handle the introduction of synthetic interfaces such as vlan, tun,
etc, which aren't visible to newbus. Or for the device driver names and
interface names to differ (or for a non-one-one mapping, interface
renames, etc).
Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
robert at fledge.watson.org Network Associates Laboratories
More information about the freebsd-arch
mailing list