aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-07-30 13:39:18 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-07-30 13:39:18 -0400
commit7272c30b6fbc051bf8a3f3c973e64f230c91c8b3 (patch)
tree0989d2d97282e1f00aaa3575d459fcb5ce0beac1 /Documentation
parent6f51f51582e793ea13e7de7ed6b138f71c51784b (diff)
parent1f4e0ff07980820977f45d6a5dbc81d3bb9ce4d3 (diff)
Merge tag 'dm-3.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm
Pull device-mapper updates from Alasdair G Kergon: - Flip the thin target into new read-only or failed modes if errors are detected; - Handle chunk sizes that are not powers of two in the snapshot and thin targets; - Provide a way for userspace to avoid replacing an already-loaded multipath hardware handler while booting; - Reduce dm_thin_endio_hook slab size to avoid allocation failures; - Numerous small changes and cleanups to the code. * tag 'dm-3.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm: (63 commits) dm thin: commit before gathering status dm thin: add read only and fail io modes dm thin metadata: introduce dm_pool_abort_metadata dm thin metadata: introduce dm_pool_metadata_set_read_only dm persistent data: introduce dm_bm_set_read_only dm thin: reduce number of metadata commits dm thin metadata: add dm_thin_changed_this_transaction dm thin metadata: add format option to dm_pool_metadata_open dm thin metadata: tidy up open and format error paths dm thin metadata: only check incompat features on open dm thin metadata: remove duplicate pmd initialisation dm thin metadata: remove create parameter from __create_persistent_data_objects dm thin metadata: move __superblock_all_zeroes to __open_or_format_metadata dm thin metadata: remove nr_blocks arg from __create_persistent_data_objects dm thin metadata: split __open or format metadata dm thin metadata: use struct dm_pool_metadata members in __open_or_format_metadata dm thin metadata: zero unused superblock uuid dm thin metadata: lift __begin_transaction out of __write_initial_superblock dm thin metadata: move dm_commit_pool_metadata into __write_initial_superblock dm thin metadata: factor out __write_initial_superblock ...
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/device-mapper/striped.txt7
-rw-r--r--Documentation/device-mapper/thin-provisioning.txt24
2 files changed, 26 insertions, 5 deletions
diff --git a/Documentation/device-mapper/striped.txt b/Documentation/device-mapper/striped.txt
index f34d3236b9d..45f3b91ea4c 100644
--- a/Documentation/device-mapper/striped.txt
+++ b/Documentation/device-mapper/striped.txt
@@ -9,15 +9,14 @@ devices in parallel.
9 9
10Parameters: <num devs> <chunk size> [<dev path> <offset>]+ 10Parameters: <num devs> <chunk size> [<dev path> <offset>]+
11 <num devs>: Number of underlying devices. 11 <num devs>: Number of underlying devices.
12 <chunk size>: Size of each chunk of data. Must be a power-of-2 and at 12 <chunk size>: Size of each chunk of data. Must be at least as
13 least as large as the system's PAGE_SIZE. 13 large as the system's PAGE_SIZE.
14 <dev path>: Full pathname to the underlying block-device, or a 14 <dev path>: Full pathname to the underlying block-device, or a
15 "major:minor" device-number. 15 "major:minor" device-number.
16 <offset>: Starting sector within the device. 16 <offset>: Starting sector within the device.
17 17
18One or more underlying devices can be specified. The striped device size must 18One or more underlying devices can be specified. The striped device size must
19be a multiple of the chunk size and a multiple of the number of underlying 19be a multiple of the chunk size multiplied by the number of underlying devices.
20devices.
21 20
22 21
23Example scripts 22Example scripts
diff --git a/Documentation/device-mapper/thin-provisioning.txt b/Documentation/device-mapper/thin-provisioning.txt
index f5cfc62b7ad..30b8b83bd33 100644
--- a/Documentation/device-mapper/thin-provisioning.txt
+++ b/Documentation/device-mapper/thin-provisioning.txt
@@ -231,6 +231,9 @@ i) Constructor
231 no_discard_passdown: Don't pass discards down to the underlying 231 no_discard_passdown: Don't pass discards down to the underlying
232 data device, but just remove the mapping. 232 data device, but just remove the mapping.
233 233
234 read_only: Don't allow any changes to be made to the pool
235 metadata.
236
234 Data block size must be between 64KB (128 sectors) and 1GB 237 Data block size must be between 64KB (128 sectors) and 1GB
235 (2097152 sectors) inclusive. 238 (2097152 sectors) inclusive.
236 239
@@ -239,7 +242,7 @@ ii) Status
239 242
240 <transaction id> <used metadata blocks>/<total metadata blocks> 243 <transaction id> <used metadata blocks>/<total metadata blocks>
241 <used data blocks>/<total data blocks> <held metadata root> 244 <used data blocks>/<total data blocks> <held metadata root>
242 245 [no_]discard_passdown ro|rw
243 246
244 transaction id: 247 transaction id:
245 A 64-bit number used by userspace to help synchronise with metadata 248 A 64-bit number used by userspace to help synchronise with metadata
@@ -257,6 +260,21 @@ ii) Status
257 held root. This feature is not yet implemented so '-' is 260 held root. This feature is not yet implemented so '-' is
258 always returned. 261 always returned.
259 262
263 discard_passdown|no_discard_passdown
264 Whether or not discards are actually being passed down to the
265 underlying device. When this is enabled when loading the table,
266 it can get disabled if the underlying device doesn't support it.
267
268 ro|rw
269 If the pool encounters certain types of device failures it will
270 drop into a read-only metadata mode in which no changes to
271 the pool metadata (like allocating new blocks) are permitted.
272
273 In serious cases where even a read-only mode is deemed unsafe
274 no further I/O will be permitted and the status will just
275 contain the string 'Fail'. The userspace recovery tools
276 should then be used.
277
260iii) Messages 278iii) Messages
261 279
262 create_thin <dev id> 280 create_thin <dev id>
@@ -329,3 +347,7 @@ regain some space then send the 'trim' message to the pool.
329ii) Status 347ii) Status
330 348
331 <nr mapped sectors> <highest mapped sector> 349 <nr mapped sectors> <highest mapped sector>
350
351 If the pool has encountered device errors and failed, the status
352 will just contain the string 'Fail'. The userspace recovery
353 tools should then be used.