From owner-freebsd-hackers@FreeBSD.ORG Mon Nov 10 01:32:23 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 07DC916A4CE for ; Mon, 10 Nov 2003 01:32:23 -0800 (PST) Received: from mail.speakeasy.net (mail6.speakeasy.net [216.254.0.206]) by mx1.FreeBSD.org (Postfix) with ESMTP id CAE5C43FD7 for ; Mon, 10 Nov 2003 01:32:20 -0800 (PST) (envelope-from jmg@hydrogen.funkthat.com) Received: (qmail 9039 invoked from network); 10 Nov 2003 09:32:20 -0000 Received: from unknown (HELO hydrogen.funkthat.com) ([69.17.45.168]) (envelope-sender ) by mail6.speakeasy.net (qmail-ldap-1.03) with SMTP for ; 10 Nov 2003 09:32:20 -0000 Received: from hydrogen.funkthat.com (ipknwl@localhost.funkthat.com [127.0.0.1])hAA9WIgP076043; Mon, 10 Nov 2003 01:32:19 -0800 (PST) (envelope-from jmg@hydrogen.funkthat.com) Received: (from jmg@localhost) by hydrogen.funkthat.com (8.12.10/8.12.10/Submit) id hAA9WGa9076042; Mon, 10 Nov 2003 01:32:16 -0800 (PST) Date: Mon, 10 Nov 2003 01:32:16 -0800 From: John-Mark Gurney To: Pawel Jakub Dawidek Message-ID: <20031110093215.GD64793@funkthat.com> Mail-Followup-To: Pawel Jakub Dawidek , Christian Laursen , Lukas Ertl , hackers@freebsd.org, phk@freebsd.org References: <20031109003617.K626@korben.in.tern> <20031109023041.GA9171@VARK.homeunix.com> <868ympydcx.fsf@borg.borderworlds.dk> <20031109213450.GB13982@VARK.homeunix.com> <20031110085115.GE84474@garage.freebsd.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20031110085115.GE84474@garage.freebsd.pl> User-Agent: Mutt/1.4.1i X-Operating-System: FreeBSD 4.2-RELEASE i386 X-PGP-Fingerprint: B7 EC EF F8 AE ED A7 31 96 7A 22 B3 D8 56 36 F4 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html cc: phk@freebsd.org cc: hackers@freebsd.org cc: Christian Laursen cc: Lukas Ertl Subject: Re: geom_mirror implementation X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: John-Mark Gurney List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Nov 2003 09:32:23 -0000 Pawel Jakub Dawidek wrote this message on Mon, Nov 10, 2003 at 09:51 +0100: > I've start some work on more advance RAID implementation wich should > fit to GEOM just fine. Every RAID level will be a different GEOM class, > but with one configuration utility. All classes will share as many code as > possible to be flexible in adding new RAID levels in futher. Strategy > of choosing disks, failures handle, etc. should be also general. I want to > provide support for many on-disk metadata formats if it will be possible. > > The bad news is that it is only a concept, I've only some initial code > and project draft. I hope I'll find time to implement this. I think GEOM aware raid is a good idea, though it'd be cool to be able to support controllers/drives that have an onboard engine. I've heard of scsi drives that have an xor engine that can take a block of data, xor it with the on disk data, write the new data, and pass the xor'd data to the parity disk. I've started writing a raid4 style geom module. I've realized that this is more complex since blocks can come in at any time, and you have to be careful. One thing that I wouldn't mind would be the ability to stick a cache layer between two GEOM modules. Could we do this by tricky use of a vnode or something? Read caching with a write through cache is a must if you want decent performance in raid[45] configs. -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."