Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | # |
2 | # Block device driver configuration | |
3 | # | |
4 | ||
9361401e DH |
5 | if BLOCK |
6 | ||
1da177e4 LT |
7 | menu "Multi-device support (RAID and LVM)" |
8 | ||
9 | config MD | |
10 | bool "Multiple devices driver support (RAID and LVM)" | |
11 | help | |
12 | Support multiple physical spindles through a single logical device. | |
13 | Required for RAID and logical volume management. | |
14 | ||
15 | config BLK_DEV_MD | |
16 | tristate "RAID support" | |
17 | depends on MD | |
18 | ---help--- | |
19 | This driver lets you combine several hard disk partitions into one | |
20 | logical block device. This can be used to simply append one | |
21 | partition to another one or to combine several redundant hard disks | |
22 | into a RAID1/4/5 device so as to provide protection against hard | |
23 | disk failures. This is called "Software RAID" since the combining of | |
24 | the partitions is done by the kernel. "Hardware RAID" means that the | |
25 | combining is done by a dedicated controller; if you have such a | |
26 | controller, you do not need to say Y here. | |
27 | ||
28 | More information about Software RAID on Linux is contained in the | |
29 | Software RAID mini-HOWTO, available from | |
30 | <http://www.tldp.org/docs.html#howto>. There you will also learn | |
31 | where to get the supporting user space utilities raidtools. | |
32 | ||
33 | If unsure, say N. | |
34 | ||
35 | config MD_LINEAR | |
36 | tristate "Linear (append) mode" | |
37 | depends on BLK_DEV_MD | |
38 | ---help--- | |
39 | If you say Y here, then your multiple devices driver will be able to | |
40 | use the so-called linear mode, i.e. it will combine the hard disk | |
41 | partitions by simply appending one to the other. | |
42 | ||
43 | To compile this as a module, choose M here: the module | |
44 | will be called linear. | |
45 | ||
46 | If unsure, say Y. | |
47 | ||
48 | config MD_RAID0 | |
49 | tristate "RAID-0 (striping) mode" | |
50 | depends on BLK_DEV_MD | |
51 | ---help--- | |
52 | If you say Y here, then your multiple devices driver will be able to | |
53 | use the so-called raid0 mode, i.e. it will combine the hard disk | |
54 | partitions into one logical device in such a fashion as to fill them | |
55 | up evenly, one chunk here and one chunk there. This will increase | |
56 | the throughput rate if the partitions reside on distinct disks. | |
57 | ||
58 | Information about Software RAID on Linux is contained in the | |
59 | Software-RAID mini-HOWTO, available from | |
60 | <http://www.tldp.org/docs.html#howto>. There you will also | |
61 | learn where to get the supporting user space utilities raidtools. | |
62 | ||
63 | To compile this as a module, choose M here: the module | |
64 | will be called raid0. | |
65 | ||
66 | If unsure, say Y. | |
67 | ||
68 | config MD_RAID1 | |
69 | tristate "RAID-1 (mirroring) mode" | |
70 | depends on BLK_DEV_MD | |
71 | ---help--- | |
72 | A RAID-1 set consists of several disk drives which are exact copies | |
73 | of each other. In the event of a mirror failure, the RAID driver | |
74 | will continue to use the operational mirrors in the set, providing | |
75 | an error free MD (multiple device) to the higher levels of the | |
76 | kernel. In a set with N drives, the available space is the capacity | |
77 | of a single drive, and the set protects against a failure of (N - 1) | |
78 | drives. | |
79 | ||
80 | Information about Software RAID on Linux is contained in the | |
81 | Software-RAID mini-HOWTO, available from | |
82 | <http://www.tldp.org/docs.html#howto>. There you will also | |
83 | learn where to get the supporting user space utilities raidtools. | |
84 | ||
85 | If you want to use such a RAID-1 set, say Y. To compile this code | |
86 | as a module, choose M here: the module will be called raid1. | |
87 | ||
88 | If unsure, say Y. | |
89 | ||
90 | config MD_RAID10 | |
91 | tristate "RAID-10 (mirrored striping) mode (EXPERIMENTAL)" | |
92 | depends on BLK_DEV_MD && EXPERIMENTAL | |
93 | ---help--- | |
94 | RAID-10 provides a combination of striping (RAID-0) and | |
4d2554d0 | 95 | mirroring (RAID-1) with easier configuration and more flexible |
1da177e4 LT |
96 | layout. |
97 | Unlike RAID-0, but like RAID-1, RAID-10 requires all devices to | |
98 | be the same size (or at least, only as much as the smallest device | |
99 | will be used). | |
100 | RAID-10 provides a variety of layouts that provide different levels | |
101 | of redundancy and performance. | |
102 | ||
103 | RAID-10 requires mdadm-1.7.0 or later, available at: | |
104 | ||
105 | ftp://ftp.kernel.org/pub/linux/utils/raid/mdadm/ | |
106 | ||
107 | If unsure, say Y. | |
108 | ||
16a53ecc N |
109 | config MD_RAID456 |
110 | tristate "RAID-4/RAID-5/RAID-6 mode" | |
1da177e4 | 111 | depends on BLK_DEV_MD |
9bc89cd8 DW |
112 | select ASYNC_MEMCPY |
113 | select ASYNC_XOR | |
1da177e4 LT |
114 | ---help--- |
115 | A RAID-5 set of N drives with a capacity of C MB per drive provides | |
116 | the capacity of C * (N - 1) MB, and protects against a failure | |
117 | of a single drive. For a given sector (row) number, (N - 1) drives | |
118 | contain data sectors, and one drive contains the parity protection. | |
119 | For a RAID-4 set, the parity blocks are present on a single drive, | |
120 | while a RAID-5 set distributes the parity across the drives in one | |
121 | of the available parity distribution methods. | |
122 | ||
16a53ecc N |
123 | A RAID-6 set of N drives with a capacity of C MB per drive |
124 | provides the capacity of C * (N - 2) MB, and protects | |
125 | against a failure of any two drives. For a given sector | |
126 | (row) number, (N - 2) drives contain data sectors, and two | |
127 | drives contains two independent redundancy syndromes. Like | |
128 | RAID-5, RAID-6 distributes the syndromes across the drives | |
129 | in one of the available parity distribution methods. | |
130 | ||
1da177e4 LT |
131 | Information about Software RAID on Linux is contained in the |
132 | Software-RAID mini-HOWTO, available from | |
133 | <http://www.tldp.org/docs.html#howto>. There you will also | |
134 | learn where to get the supporting user space utilities raidtools. | |
135 | ||
16a53ecc | 136 | If you want to use such a RAID-4/RAID-5/RAID-6 set, say Y. To |
1da177e4 | 137 | compile this code as a module, choose M here: the module |
16a53ecc | 138 | will be called raid456. |
1da177e4 LT |
139 | |
140 | If unsure, say Y. | |
141 | ||
29269553 | 142 | config MD_RAID5_RESHAPE |
14f50b49 N |
143 | bool "Support adding drives to a raid-5 array" |
144 | depends on MD_RAID456 | |
145 | default y | |
29269553 N |
146 | ---help--- |
147 | A RAID-5 set can be expanded by adding extra drives. This | |
148 | requires "restriping" the array which means (almost) every | |
149 | block must be written to a different place. | |
150 | ||
151 | This option allows such restriping to be done while the array | |
14f50b49 | 152 | is online. |
29269553 | 153 | |
4d2554d0 | 154 | You will need mdadm version 2.4.1 or later to use this |
6f91fe88 N |
155 | feature safely. During the early stage of reshape there is |
156 | a critical section where live data is being over-written. A | |
157 | crash during this time needs extra care for recovery. The | |
158 | newer mdadm takes a copy of the data in the critical section | |
159 | and will restore it, if necessary, after a crash. | |
29269553 N |
160 | |
161 | The mdadm usage is e.g. | |
162 | mdadm --grow /dev/md1 --raid-disks=6 | |
163 | to grow '/dev/md1' to having 6 disks. | |
164 | ||
165 | Note: The array can only be expanded, not contracted. | |
166 | There should be enough spares already present to make the new | |
167 | array workable. | |
168 | ||
14f50b49 N |
169 | If unsure, say Y. |
170 | ||
1da177e4 LT |
171 | config MD_MULTIPATH |
172 | tristate "Multipath I/O support" | |
173 | depends on BLK_DEV_MD | |
174 | help | |
175 | Multipath-IO is the ability of certain devices to address the same | |
176 | physical disk over multiple 'IO paths'. The code ensures that such | |
177 | paths can be defined and handled at runtime, and ensures that a | |
178 | transparent failover to the backup path(s) happens if a IO errors | |
179 | arrives on the primary path. | |
180 | ||
181 | If unsure, say N. | |
182 | ||
183 | config MD_FAULTY | |
184 | tristate "Faulty test module for MD" | |
185 | depends on BLK_DEV_MD | |
186 | help | |
187 | The "faulty" module allows for a block device that occasionally returns | |
188 | read or write errors. It is useful for testing. | |
189 | ||
190 | In unsure, say N. | |
191 | ||
192 | config BLK_DEV_DM | |
193 | tristate "Device mapper support" | |
194 | depends on MD | |
195 | ---help--- | |
196 | Device-mapper is a low level volume manager. It works by allowing | |
197 | people to specify mappings for ranges of logical sectors. Various | |
198 | mapping types are available, in addition people may write their own | |
199 | modules containing custom mappings if they wish. | |
200 | ||
201 | Higher level volume managers such as LVM2 use this driver. | |
202 | ||
203 | To compile this as a module, choose M here: the module will be | |
204 | called dm-mod. | |
205 | ||
206 | If unsure, say N. | |
207 | ||
cc109201 BR |
208 | config DM_DEBUG |
209 | boolean "Device mapper debugging support" | |
210 | depends on BLK_DEV_DM && EXPERIMENTAL | |
211 | ---help--- | |
212 | Enable this for messages that may help debug device-mapper problems. | |
213 | ||
214 | If unsure, say N. | |
215 | ||
1da177e4 LT |
216 | config DM_CRYPT |
217 | tristate "Crypt target support" | |
218 | depends on BLK_DEV_DM && EXPERIMENTAL | |
219 | select CRYPTO | |
3263263f | 220 | select CRYPTO_CBC |
1da177e4 LT |
221 | ---help--- |
222 | This device-mapper target allows you to create a device that | |
223 | transparently encrypts the data on it. You'll need to activate | |
224 | the ciphers you're going to use in the cryptoapi configuration. | |
225 | ||
226 | Information on how to use dm-crypt can be found on | |
227 | ||
228 | <http://www.saout.de/misc/dm-crypt/> | |
229 | ||
230 | To compile this code as a module, choose M here: the module will | |
231 | be called dm-crypt. | |
232 | ||
233 | If unsure, say N. | |
234 | ||
235 | config DM_SNAPSHOT | |
236 | tristate "Snapshot target (EXPERIMENTAL)" | |
237 | depends on BLK_DEV_DM && EXPERIMENTAL | |
238 | ---help--- | |
4d2554d0 | 239 | Allow volume managers to take writable snapshots of a device. |
1da177e4 LT |
240 | |
241 | config DM_MIRROR | |
242 | tristate "Mirror target (EXPERIMENTAL)" | |
243 | depends on BLK_DEV_DM && EXPERIMENTAL | |
244 | ---help--- | |
245 | Allow volume managers to mirror logical volumes, also | |
246 | needed for live data migration tools such as 'pvmove'. | |
247 | ||
248 | config DM_ZERO | |
249 | tristate "Zero target (EXPERIMENTAL)" | |
250 | depends on BLK_DEV_DM && EXPERIMENTAL | |
251 | ---help--- | |
252 | A target that discards writes, and returns all zeroes for | |
253 | reads. Useful in some recovery situations. | |
254 | ||
255 | config DM_MULTIPATH | |
256 | tristate "Multipath target (EXPERIMENTAL)" | |
257 | depends on BLK_DEV_DM && EXPERIMENTAL | |
258 | ---help--- | |
259 | Allow volume managers to support multipath hardware. | |
260 | ||
261 | config DM_MULTIPATH_EMC | |
262 | tristate "EMC CX/AX multipath support (EXPERIMENTAL)" | |
263 | depends on DM_MULTIPATH && BLK_DEV_DM && EXPERIMENTAL | |
264 | ---help--- | |
265 | Multipath support for EMC CX/AX series hardware. | |
266 | ||
dd172d72 CS |
267 | config DM_MULTIPATH_RDAC |
268 | tristate "LSI/Engenio RDAC multipath support (EXPERIMENTAL)" | |
269 | depends on DM_MULTIPATH && BLK_DEV_DM && EXPERIMENTAL | |
270 | ---help--- | |
271 | Multipath support for LSI/Engenio RDAC. | |
272 | ||
26b9f228 HM |
273 | config DM_DELAY |
274 | tristate "I/O delaying target (EXPERIMENTAL)" | |
275 | depends on BLK_DEV_DM && EXPERIMENTAL | |
276 | ---help--- | |
277 | A target that delays reads and/or writes and can send | |
278 | them to different devices. Useful for testing. | |
279 | ||
280 | If unsure, say N. | |
281 | ||
1da177e4 LT |
282 | endmenu |
283 | ||
9361401e | 284 | endif |