Date: Fri, 18 Aug 2000 22:41:32 +0200 From: Poul-Henning Kamp <phk@freebsd.org> To: current@freebsd.org Subject: PATCH: devfs mkIII test & review please. Message-ID: <84513.966631292@critter>
next in thread | raw e-mail | index | archive | help
Please look at, test and review: http://phk.freebsd.dk/patch/devfsIII.patch Do not despair at the size of the patch, the majority of it are the removal of the old DEVFS. The kernel shrinks 3000 lines because of this patch. Please report the exact patch version in your emails, I will be updating the patch on my web-server at regular intervals. I intend to commit this stuff in the next week, and I hope that we can make DEVFS the default pretty soon after. Until you have seen a few "this works for me" emails, you should probably not try this on a machine you don't want hosed. I will give a presentation at BSDcon about this entire ball of wax: DEVFS, dev_t, disk-minilayer, struct bio/buf and so on. Be there! Poul-Henning README: devfsIII.patch Contains the patches needed to add the mkIII devfs in fs/devfs and remove the mkI in miscfs/devfs. (This patch includes the "vaccess.patch" as well, I expect that will be committed separately before this patch) Apply patch, add "options DEVFS" to your kernel and tell me what happens. Status: Functional (at least on my diskless test box). Drivers which do real cloning: md bpf tun Missing: Rename Subdirs. Close some race conditions using guaranteed atomic operations. Mountoption (ro ?) to prevent new devices from appearing in an instance. All uses of cdevsw_add() needs to be use devfs_clone() instead. Patch Version: Fri Aug 18 22:32:54 CEST 2000 Poul-Henning -- draft commit message(s) -- Remove all traces of Julians DEVFS (incl from kern/subr_diskslice.c) Remove old DEVFS support fields from dev_t. Make uid, gid & mode members of dev_t and set them in make_dev(). Use correct uid, gid & mode in make_dev in disk minilayer. Use makedev() rather than make_dev() for MFSs magic devices to prevent DEVFS from noticing this abuse. Add a field for DEVFS inode number in dev_t. Add new DEVFS in fs/devfs. Add devfs cloning to: disk minilayer (ie: ad(4), sd(4), cd(4) etc etc) md(4), tun(4), bpf(4) If DEVFS add -d flag to /sbin/inits args to make it mount devfs. Add commented out DEVFS to GENERIC -- end -- -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD coreteam member | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence. 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?84513.966631292>