]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFgraid/head:
authormav <mav@FreeBSD.org>
Thu, 24 Mar 2011 21:31:32 +0000 (21:31 +0000)
committermav <mav@FreeBSD.org>
Thu, 24 Mar 2011 21:31:32 +0000 (21:31 +0000)
commit8dab5b050118631ed065f01515a1e2617f8e98de
treec6d2c52832833705e8a109a4fd092aba4318585f
parenta827838a1a97317dff1d1b709c70e63c7b4f2429
MFgraid/head:
Add new RAID GEOM class, that is going to replace ataraid(4) in supporting
various BIOS-based software RAIDs. Unlike ataraid(4) this implementation
does not depend on legacy ata(4) subsystem and can be used with any disk
drivers, including new CAM-based ones (ahci(4), siis(4), mvs(4), ata(4)
with `options ATA_CAM`). To make code more readable and extensible, this
implementation follows modular design, including core part and two sets
of modules, implementing support for different metadata formats and RAID
levels.

Support for such popular metadata formats is now implemented:
Intel, JMicron, NVIDIA, Promise (also used by AMD/ATI) and SiliconImage.

Such RAID levels are now supported:
RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT.

For any all of these RAID levels and metadata formats this class supports
full cycle of volume operations: reading, writing, creation, deletion,
disk removal and insertion, rebuilding, dirty shutdown detection
and resynchronization, bad sector recovery, faulty disks tracking,
hot-spare disks. For Intel and Promise formats there is support multiple
volumes per disk set.

Look graid(8) manual page for additional details.

Co-authored by: imp
Sponsored by: Cisco Systems, Inc. and iXsystems, Inc.
25 files changed:
etc/mtree/BSD.include.dist
include/Makefile
sbin/geom/class/Makefile
sbin/geom/class/raid/Makefile [new file with mode: 0644]
sbin/geom/class/raid/geom_raid.c [new file with mode: 0644]
sbin/geom/class/raid/graid.8 [new file with mode: 0644]
sys/conf/NOTES
sys/conf/files
sys/conf/options
sys/geom/raid/g_raid.c [new file with mode: 0644]
sys/geom/raid/g_raid.h [new file with mode: 0644]
sys/geom/raid/g_raid_ctl.c [new file with mode: 0644]
sys/geom/raid/g_raid_md_if.m [new file with mode: 0644]
sys/geom/raid/g_raid_tr_if.m [new file with mode: 0644]
sys/geom/raid/md_intel.c [new file with mode: 0644]
sys/geom/raid/md_jmicron.c [new file with mode: 0644]
sys/geom/raid/md_nvidia.c [new file with mode: 0644]
sys/geom/raid/md_promise.c [new file with mode: 0644]
sys/geom/raid/md_sii.c [new file with mode: 0644]
sys/geom/raid/tr_concat.c [new file with mode: 0644]
sys/geom/raid/tr_raid0.c [new file with mode: 0644]
sys/geom/raid/tr_raid1.c [new file with mode: 0644]
sys/geom/raid/tr_raid1e.c [new file with mode: 0644]
sys/modules/geom/Makefile
sys/modules/geom/geom_raid/Makefile [new file with mode: 0644]