From owner-freebsd-geom@FreeBSD.ORG Thu Jun 10 00:02:32 2010 Return-Path: Delivered-To: freebsd-geom@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 90C87106566B for ; Thu, 10 Jun 2010 00:02:32 +0000 (UTC) (envelope-from spawk@acm.poly.edu) Received: from acm.poly.edu (acm.poly.edu [128.238.9.200]) by mx1.freebsd.org (Postfix) with ESMTP id 343D68FC13 for ; Thu, 10 Jun 2010 00:02:30 +0000 (UTC) Received: (qmail 38235 invoked from network); 10 Jun 2010 00:02:29 -0000 Received: from unknown (HELO ?192.168.0.2?) (spawk@96.224.221.101) by acm.poly.edu with AES256-SHA encrypted SMTP; 10 Jun 2010 00:02:29 -0000 Message-ID: <4C102B76.4010700@acm.poly.edu> Date: Wed, 09 Jun 2010 20:01:58 -0400 From: Boris Kochergin User-Agent: Thunderbird 2.0.0.24 (X11/20100330) MIME-Version: 1.0 To: freebsd-geom@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: GEOM pseudo-RAID controller support direction? X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Jun 2010 00:02:32 -0000 Hi. As I've mentioned before, I've been working on reimplementing ataraid functionality in GEOM, and am getting the hang of it. I have a module, geom_pseudoraid, that implements minimalist RAID-1 support for VIA pseudo-RAID controllers (code is at http://acm.poly.edu/~spawk/geom_pseudoraid.tbz). It is very much a work in progress and is missing a lot of features and error-handling. Nevertheless, I felt it better to ask the following sooner than later: 1. I know that work on this would ideally include separating various RAID transformations out of GEOM modules and using them as libraries of sorts, but my axe isn't sharp enough for that yet. Is this considered useful despite that? 2. As has been mentioned, geom_mirror, geom_stripe, and geom_concat are excellent candidates for including pseudo-RAID controller support into, at the cost of complicating them somewhat. I can say that it would be a lot easier for me to, for example, teach geom_mirror about various vendor metadata formats than to add all of geom_mirror's robustness into my code, and I would prefer such a route. I suspect this would require a degree of cooperation from Pawel, as the modules mentioned are his code. 3. Thinking ahead quite a bit, my code currently names providers as /dev/pseudoraid/[vendor][unit]. For example, the provider on my development machine is /dev/pseudoraid/via0. Though this seems to be the GEOM convention, it's also a POLA violation, as the ataraid code names things /dev/ar[unit]. Any thoughts on how providers should be named? Thanks. -Boris