From owner-freebsd-current Tue Jan 26 05:04:25 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id FAA29503 for freebsd-current-outgoing; Tue, 26 Jan 1999 05:04:25 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from critter.freebsd.dk (critter.freebsd.dk [212.242.40.131]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id FAA29487 for ; Tue, 26 Jan 1999 05:04:21 -0800 (PST) (envelope-from phk@critter.freebsd.dk) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.9.1/8.8.5) with ESMTP id OAA25989; Tue, 26 Jan 1999 14:03:03 +0100 (CET) To: paul@originative.co.uk cc: dfr@nlsystems.com, archie@whistle.com, sobomax@altavista.net, current@FreeBSD.ORG, julian@whistle.com Subject: Re: DEVFS, the time has come... In-reply-to: Your message of "Tue, 26 Jan 1999 12:47:45 GMT." Date: Tue, 26 Jan 1999 14:03:02 +0100 Message-ID: <25987.917355782@critter.freebsd.dk> From: Poul-Henning Kamp Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG >> > >> >Wouldn't it be possible to fit this into the device system? >> If we treat >> >disks as devices and partition types as drivers, most of the >> boring work >> >of matching drivers to devices and keeping lists and trees >> of objects will >> >happen automatically. >> >> Well, as long as you remember that it is not a strict hierarchy: >> I could slice two disks, mirror the slices and concatenate the >> mirrors if I wanted to. > >Where does this happen though? > >If we go with Doug's idea (which seems quite neat), then the device >subsystem will present devices for each of the slices/partitions that >the low level disk handling code finds during the probe phase. Step back one step, and realize that handling fdisk or disklabel "partitioning" is just another geometry translation, just like mirroring/striping/concatenating/raid-%d/copy-on-write and so on. (The only magic about them is that we're more used to them.) Vinum would fit right into this. The major problem is the "struct buf" which is too bloated to work with for iorequests. There are some boot time issues too but they are more a DEVFS kind of thing than a SLICE/GEOMETRY thing. As I said, doing it generally is easy, all in all. If there is interest I can try to find my design-notes for it. -- Poul-Henning Kamp FreeBSD coreteam member phk@FreeBSD.ORG "Real hackers run -current on their laptop." FreeBSD -- It will take a long time before progress goes too far! To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message