diff options
author | Paul Clements <paul.clements@steeleye.com> | 2006-10-03 04:15:49 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-03 11:04:17 -0400 |
commit | 9b1d1dac181d8c1b9492e05cee660a985d035a06 (patch) | |
tree | af12b1eaac4e0f7f3528ec26a223faeabed35845 /Documentation | |
parent | 76186dd8b73d2b7b9b4c8629b89c845e97009801 (diff) |
[PATCH] md: new sysfs interface for setting bits in the write-intent-bitmap
Add a new sysfs interface that allows the bitmap of an array to be dirtied.
The interface is write-only, and is used as follows:
echo "1000" > /sys/block/md2/md/bitmap
(dirty the bit for chunk 1000 [offset 0] in the in-memory and on-disk
bitmaps of array md2)
echo "1000-2000" > /sys/block/md1/md/bitmap
(dirty the bits for chunks 1000-2000 in md1's bitmap)
This is useful, for example, in cluster environments where you may need to
combine two disjoint bitmaps into one (following a server failure, after a
secondary server has taken over the array). By combining the bitmaps on
the two servers, a full resync can be avoided (This was discussed on the
list back on March 18, 2005, "[PATCH 1/2] md bitmap bug fixes" thread).
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/md.txt | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Documentation/md.txt b/Documentation/md.txt index 0668f9dc9d29..084ecf4eb2f8 100644 --- a/Documentation/md.txt +++ b/Documentation/md.txt | |||
@@ -410,6 +410,15 @@ also have | |||
410 | than sectors, this my be larger than the number of actual errors | 410 | than sectors, this my be larger than the number of actual errors |
411 | by a factor of the number of sectors in a page. | 411 | by a factor of the number of sectors in a page. |
412 | 412 | ||
413 | bitmap_set_bits | ||
414 | If the array has a write-intent bitmap, then writing to this | ||
415 | attribute can set bits in the bitmap, indicating that a resync | ||
416 | would need to check the corresponding blocks. Either individual | ||
417 | numbers or start-end pairs can be written. Multiple numbers | ||
418 | can be separated by a space. | ||
419 | Note that the numbers are 'bit' numbers, not 'block' numbers. | ||
420 | They should be scaled by the bitmap_chunksize. | ||
421 | |||
413 | Each active md device may also have attributes specific to the | 422 | Each active md device may also have attributes specific to the |
414 | personality module that manages it. | 423 | personality module that manages it. |
415 | These are specific to the implementation of the module and could | 424 | These are specific to the implementation of the module and could |