summaryrefslogtreecommitdiffstats
path: root/sbin/geom/class/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* MFgraid/head:mav2011-03-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Bring in geom_sched, support for scheduling disk I/O requestsluigi2010-04-121-0/+1
| | | | | | | | | | | | in a device independent manner. Also include an example anticipatory scheduler, gsched_rr, which gives very nice performance improvements in presence of competing random access patterns. This is joint work with Fabio Checconi, developed last year and presented at BSDCan 2009. You can find details in the README file or at http://info.iet.unipi.it/~luigi/geom_sched/
* Add gmountver, disk mount verification GEOM class.trasz2010-01-161-0/+1
| | | | | | | | Note that due to e.g. write throttling ('wdrain'), it can stall all the disk I/O instead of just the device it's configured for. Using it for removable media is therefore not a good idea. Reviewed by: pjd (earlier version)
* Bring in the GEOM Virtualisation class, which allows to create huge GEOMpjd2007-09-231-0/+1
| | | | | | | | | providers with limited physical storage and add physical storage as needed. Submitted by: Ivan Voras Sponsored by: Google Summer of Code 2006 Approved by: re (kensmith)
* Add gpart(8).marcel2007-05-151-0/+1
| | | | | | | In order to support gpart(8), geom(8) needs to support a named argument. Also, optional string parameters are a requirement. Both have been added to the infrastructure. The former required all existing classes to be adjusted.
* First cut at GEOM based multipath. This is an active/passive{/passive...}mjacob2007-02-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | arrangement that has no intrinsic internal knowledge of whether devices it is given are truly multipath devices. As such, this is a simplistic approach, but still a useful one. The basic approach is to (at present- this will change soon) use camcontrol to find likely identical devices and and label the trailing sector of the first one. This label contains both a full UUID and a name. The name is what is presented in /dev/multipath, but the UUID is used as a true distinguishor at g_taste time, thus making sure we don't have chaos on a shared SAN where everyone names their data multipath as "Fred". The first of N identical devices (and N *may* be 1!) becomes the active path until a BIO request is failed with EIO or ENXIO. When this occurs, the active disk is ripped away and the next in a list is picked to (retry and) continue with. During g_taste events new disks that meet the match criteria for existing multipath geoms get added to the tail end of the list. Thus, this active/passive setup actually does work for devices which go away and come back, as do (now) mpt(4) and isp(4) SAN based disks. There is still a lot to do to improve this- like about 5 of the 12 recommendations I've received about it, but it's been functional enough for a while that it deserves a broader test base. Reviewed by: pjd Sponsored by: IronPort Systems MFC: 2 months
* Hook up gjournal bits to the build.pjd2006-10-311-0/+1
| | | | Sponsored by: home.pl
* A GEOM cache can speed up read performance by sending fixed sizeru2006-10-061-1/+2
| | | | | | | | | | read requests to its consumer. It has been developed to address the problem of a horrible read performance of a 64k blocksize FS residing on a RAID3 array with 8 data components, where a single disk component would only get 8k read requests, thus effectively killing disk performance under high load. Documentation will be provided later. I'd like to thank Vsevolod Lobko for his bright ideas, and Pawel Jakub Dawidek for helping me fix the nasty bug.
* Reimplementation of world/kernel build options. For details, see:ru2006-03-171-1/+3
| | | | | | | | http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html The src.conf(5) manpage is to follow in a few days. Brought to you by: imp, jhb, kris, phk, ru (all bugs are mine)
* As with NO_CRYPT, don't try to compile geli(8) when NO_OPENSSL is definedmarius2005-08-271-1/+1
| | | | | | either. MFC after: 1 week
* Add missing check for the NO_CRYPT build option.ru2005-08-021-0/+2
| | | | Reported by: Alexander Polakov
* I think I found the problem, reconnect geli to the build.pjd2005-07-271-1/+1
|
* Disconnect geli from the build for now.pjd2005-07-271-1/+1
| | | | | I need to find out first what is the cause of sha2.c compilation problem on alpha.
* Connect GEOM_ELI class to the build.pjd2005-07-271-0/+1
| | | | MFC after: 1 week
* Connect SHSEC GEOM class to the build.pjd2005-01-111-0/+1
|
* Connect RAID3 GEOM class to the build.pjd2004-08-161-0/+1
|
* Connect GEOM_MIRROR class to the build.pjd2004-07-301-0/+1
|
* Introduce GEOM_LABEL class.pjd2004-07-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | This class is used for detecting volume labels on file systems: UFS, MSDOSFS (FAT12, FAT16, FAT32) and ISO9660. It also provide native labelization (there is no need for file system). g_label_ufs.c is based on geom_vol_ffs from Gordon Tetlow. g_label_msdos.c and g_label_iso9660.c are probably hacks, I just found where volume labels are stored and I use those offsets here, but with this class it should be easy to do it as it should be done by someone who know how. Implementing volume labels detection for other file systems also should be trivial. New providers are created in those directories: /dev/ufs/ (UFS1, UFS2) /dev/msdosfs/ (FAT12, FAT16, FAT32) /dev/iso9660/ (ISO9660) /dev/label/ (native labels, configured with glabel(8)) Manual page cleanups and some comments inside were submitted by Simon L. Nielsen, who was, as always, very helpful. Thanks!
* Bring in geom(8) utility. It is an universal utility for operating onpjd2004-05-201-0/+7
GEOM classes. It works by loading a shared library via dlopen(3) mechanism with class-specific code, it is also responsible for communicating with GEOM via libgeom(3). Per-class shared libraries are going to be stored in /lib/geom/ directory. It provides also few standard commands like 'list', 'load' and 'unload' for existing classes which aren't aware of geom(8). More info will be send on freebsd-current@ mailing list. Supported by: Wheel - Open Technologies - http://www.wheel.pl
OpenPOWER on IntegriCloud