Date: Mon, 21 Oct 2002 10:16:39 +0200 From: Poul-Henning Kamp <phk@critter.freebsd.dk> To: Scott Long <scott_long@btc.adaptec.com> Cc: Scott Long <scottl@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/etc MAKEDEV src/sbin/raidctl Makefile raidctl.8 raidctl.c rf_configure.c src/share/man/man4 Makefile raid.4 src/sys/conf NOTES files majors options src/sys/dev/raidframe rf_acctrace.c rf_acctrace.h rf_alloclist.c rf_alloclist.h ... Message-ID: <1787.1035188199@critter.freebsd.dk> In-Reply-To: Your message of "Sun, 20 Oct 2002 20:36:17 MDT." <20021021023616.GA79165@hollin.btc.adaptec.com>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <20021021023616.GA79165@hollin.btc.adaptec.com>, Scott Long writes: >So now there are 3 software RAID implementations in FreeBSD. RARI (Redundant Array of Raid Implementations) ? :-) My hope, (it isn't quite a plan yet) is that we can write/rewrite some really good fundamental algorithms as individual GEOM "class-lets": 1-N mirroring N-1 striping N-1 concatenation RAID5 etc. Various "real" classes would then implement the necessary recognition and configuration code, and employ the class-lets to do the real work. This is more or less the same way it's done with slicers now: we have a geom_slice class-let, and geom_bsd, geom_mbr ... classes which just configure the geom_slice to do the work. Once we get past 5.0-R, I plan to pull ccd into GEOM this way and use that for prototyping the APIs. After that I would like to get the ATA-raid stuff migrated. And that, I must confess is as far as my aspirations go right now, vinum and raidframe are both out of scope for me, but I will of course help out as best I can. Here are a dump of my GEOM class idea sheet, if anybody wants a neat project, I'll be happy to hand out: geom_secsize Change the appearant sectorsize of a device up or down. This, amongst other things, can be used to test filesystems and other code for sectorsize agnostism. It can probably also simulate "block devices" well enough to fool VMWARE. geom_wipe This changes BIO_DELETE to BIO_WRITE and as such implements a basic secure erase function for filesystems which issue BIO_DELETE requests. geom_murphy A geom_class with configurable lossage usable for testing. geom_integ A geom class which saves a MD5 sum of each sector and checks that it reads back the same. Useful for testing of drivers and geom classes. geom_udp A simple network-disk client implementation. Server is a userland process. geom_mirror 1-N mirroring classlet geom_stripe N-1 striping classlet geom_concat N-1 concatenation classlet geom_ccd CCD compatibility class. geom_oops Implements copy-on-write and commit/abandon facilities. Could possibly do snapshots as well. The list goes ever ever on... -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | 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 cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1787.1035188199>