fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / drivers / md / Kconfig
index ac43f98..4540ade 100644 (file)
@@ -2,6 +2,8 @@
 # Block device driver configuration
 #
 
+if BLOCK
+
 menu "Multi-device support (RAID and LVM)"
 
 config MD
@@ -90,7 +92,7 @@ config MD_RAID10
        depends on BLK_DEV_MD && EXPERIMENTAL
        ---help---
          RAID-10 provides a combination of striping (RAID-0) and
-         mirroring (RAID-1) with easier configuration and more flexable
+         mirroring (RAID-1) with easier configuration and more flexible
          layout.
          Unlike RAID-0, but like RAID-1, RAID-10 requires all devices to
          be the same size (or at least, only as much as the smallest device
@@ -104,8 +106,8 @@ config MD_RAID10
 
          If unsure, say Y.
 
-config MD_RAID5
-       tristate "RAID-4/RAID-5 mode"
+config MD_RAID456
+       tristate "RAID-4/RAID-5/RAID-6 mode"
        depends on BLK_DEV_MD
        ---help---
          A RAID-5 set of N drives with a capacity of C MB per drive provides
@@ -116,36 +118,51 @@ config MD_RAID5
          while a RAID-5 set distributes the parity across the drives in one
          of the available parity distribution methods.
 
+         A RAID-6 set of N drives with a capacity of C MB per drive
+         provides the capacity of C * (N - 2) MB, and protects
+         against a failure of any two drives. For a given sector
+         (row) number, (N - 2) drives contain data sectors, and two
+         drives contains two independent redundancy syndromes.  Like
+         RAID-5, RAID-6 distributes the syndromes across the drives
+         in one of the available parity distribution methods.
+
          Information about Software RAID on Linux is contained in the
          Software-RAID mini-HOWTO, available from
          <http://www.tldp.org/docs.html#howto>. There you will also
          learn where to get the supporting user space utilities raidtools.
 
-         If you want to use such a RAID-4/RAID-5 set, say Y.  To
+         If you want to use such a RAID-4/RAID-5/RAID-6 set, say Y.  To
          compile this code as a module, choose M here: the module
-         will be called raid5.
+         will be called raid456.
 
          If unsure, say Y.
 
-config MD_RAID6
-       tristate "RAID-6 mode"
-       depends on BLK_DEV_MD
+config MD_RAID5_RESHAPE
+       bool "Support adding drives to a raid-5 array"
+       depends on MD_RAID456
+       default y
        ---help---
-         A RAID-6 set of N drives with a capacity of C MB per drive
-         provides the capacity of C * (N - 2) MB, and protects
-         against a failure of any two drives. For a given sector
-         (row) number, (N - 2) drives contain data sectors, and two
-         drives contains two independent redundancy syndromes.  Like
-         RAID-5, RAID-6 distributes the syndromes across the drives
-         in one of the available parity distribution methods.
+         A RAID-5 set can be expanded by adding extra drives. This
+         requires "restriping" the array which means (almost) every
+         block must be written to a different place.
 
-         RAID-6 requires mdadm-1.5.0 or later, available at:
+          This option allows such restriping to be done while the array
+         is online.
 
-         ftp://ftp.kernel.org/pub/linux/utils/raid/mdadm/
+         You will need mdadm version 2.4.1 or later to use this
+         feature safely.  During the early stage of reshape there is
+         a critical section where live data is being over-written.  A
+         crash during this time needs extra care for recovery.  The
+         newer mdadm takes a copy of the data in the critical section
+         and will restore it, if necessary, after a crash.
 
-         If you want to use such a RAID-6 set, say Y.  To compile
-         this code as a module, choose M here: the module will be
-         called raid6.
+         The mdadm usage is e.g.
+              mdadm --grow /dev/md1 --raid-disks=6
+         to grow '/dev/md1' to having 6 disks.
+
+         Note: The array can only be expanded, not contracted.
+         There should be enough spares already present to make the new
+         array workable.
 
          If unsure, say Y.
 
@@ -186,10 +203,19 @@ config BLK_DEV_DM
 
          If unsure, say N.
 
+config DM_DEBUG
+       boolean "Device mapper debugging support"
+       depends on BLK_DEV_DM && EXPERIMENTAL
+       ---help---
+         Enable this for messages that may help debug device-mapper problems.
+
+         If unsure, say N.
+
 config DM_CRYPT
        tristate "Crypt target support"
        depends on BLK_DEV_DM && EXPERIMENTAL
        select CRYPTO
+       select CRYPTO_CBC
        ---help---
          This device-mapper target allows you to create a device that
          transparently encrypts the data on it. You'll need to activate
@@ -208,7 +234,7 @@ config DM_SNAPSHOT
        tristate "Snapshot target (EXPERIMENTAL)"
        depends on BLK_DEV_DM && EXPERIMENTAL
        ---help---
-         Allow volume managers to take writeable snapshots of a device.
+         Allow volume managers to take writable snapshots of a device.
 
 config DM_MIRROR
        tristate "Mirror target (EXPERIMENTAL)"
@@ -238,3 +264,4 @@ config DM_MULTIPATH_EMC
 
 endmenu
 
+endif