Date: Sat, 30 May 1998 06:55:08 +0200 From: Eivind Eklund <eivind@yes.no> To: "Jordan K. Hubbard" <jkh@time.cdrom.com> Cc: current@FreeBSD.ORG Subject: Re: I see one major problem with DEVFS... Message-ID: <19980530065508.30647@follo.net> In-Reply-To: <17374.896500321@time.cdrom.com>; from Jordan K. Hubbard on Fri, May 29, 1998 at 08:52:01PM -0700 References: <19980530054842.51661@follo.net> <17374.896500321@time.cdrom.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, May 29, 1998 at 08:52:01PM -0700, Jordan K. Hubbard wrote: > > > E.g. I can shoot my foot off, but I can't sew it back on. :-) > > > > Yes, you can. You can mount another devfs and 'mv' a device from it > > (or at least that's the way the specs read - I don't have devfs > > enabled right now, so I can't test). > > That's utterly rude. :-) > > I hope you're not implying that this is going to be the accepted way > for doing this in the future as well. Non-persistence is a big enough > violation of POLA as it is, and not even being able to do mknod(2) > operations on a devfs to replace missing entries would be a POLA > catastrophe. OK, this can be solved in at least these three ways (neither of which are pretty): (1) Add an ioctl() to devfs that does all of this in-kernel, and make mknod use this. (2) Add another layer to devfs that let somebody request by major/minor (requires a lot of hoops for SLICE, and locks us to the present set of majors/minors until the compatibility mode goes away). Call this layer from mknod to get correct device names. (3) Put a table in mknod that tells what owns which majors, and how to parse the minors. Use that to parse majors and minors. For the two latter solutions, mknod would have to mount a temporary devfs somewhere, and hardlink over the correct device node to the name supplied. Eivind. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19980530065508.30647>