diff options
author | Joe Thornber <ejt@redhat.com> | 2012-07-27 10:08:16 -0400 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2012-07-27 10:08:16 -0400 |
commit | e49e582965b3694f07a106adc83ddb44aa4f0890 (patch) | |
tree | fcc6ff02fd4bd9afa59b5fd3bdbb9991f1271d8a /Documentation | |
parent | da105ed5fd7edcc5e0df7dbacef4dadda74e7ebe (diff) |
dm thin: add read only and fail io modes
Add read-only and fail-io modes to thin provisioning.
If a transaction commit fails the pool's metadata device will transition
to "read-only" mode. If a commit fails once already in read-only mode
the transition to "fail-io" mode occurs.
Once in fail-io mode the pool and all associated thin devices will
report a status of "Fail".
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/device-mapper/thin-provisioning.txt | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/Documentation/device-mapper/thin-provisioning.txt b/Documentation/device-mapper/thin-provisioning.txt index f5cfc62b7ad3..30b8b83bd333 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 | |||
260 | iii) Messages | 278 | iii) 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. | |||
329 | ii) Status | 347 | ii) 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. | ||