diff options
author | NeilBrown <neilb@suse.de> | 2005-11-09 00:39:26 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-09 10:56:37 -0500 |
commit | 24dd469d728dae07f40c5d79ea6dedd38cdf1a30 (patch) | |
tree | 3975aaeaa6c1cd77a2d4b06184ad3bd0175a44a5 /include/linux | |
parent | 3f294f4fb6f2ba887b717674da26c21f3d57f3fc (diff) |
[PATCH] md: allow a manual resync with md
You can trigger a 'check' with
echo check > /sys/block/mdX/md/scan_mode
or a check-and-repair errors with
echo repair > /sys/block/mdX/md/scan_mode
and read the current state from the same file.
Note: personalities need to know the different between 'check' and 'repair',
but don't yet. Until they do, 'check' will be the same as 'repair' and will
just do a normal resync pass.
Signed-off-by: Neil Brown <neilb@suse.de>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/raid/md_k.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h index d1dad32ebe07..efd04dca0abd 100644 --- a/include/linux/raid/md_k.h +++ b/include/linux/raid/md_k.h | |||
@@ -182,6 +182,8 @@ struct mddev_s | |||
182 | * ERR: and IO error was detected - abort the resync/recovery | 182 | * ERR: and IO error was detected - abort the resync/recovery |
183 | * INTR: someone requested a (clean) early abort. | 183 | * INTR: someone requested a (clean) early abort. |
184 | * DONE: thread is done and is waiting to be reaped | 184 | * DONE: thread is done and is waiting to be reaped |
185 | * REQUEST: user-space has requested a sync (used with SYNC) | ||
186 | * CHECK: user-space request for for check-only, no repair | ||
185 | */ | 187 | */ |
186 | #define MD_RECOVERY_RUNNING 0 | 188 | #define MD_RECOVERY_RUNNING 0 |
187 | #define MD_RECOVERY_SYNC 1 | 189 | #define MD_RECOVERY_SYNC 1 |
@@ -189,6 +191,8 @@ struct mddev_s | |||
189 | #define MD_RECOVERY_INTR 3 | 191 | #define MD_RECOVERY_INTR 3 |
190 | #define MD_RECOVERY_DONE 4 | 192 | #define MD_RECOVERY_DONE 4 |
191 | #define MD_RECOVERY_NEEDED 5 | 193 | #define MD_RECOVERY_NEEDED 5 |
194 | #define MD_RECOVERY_REQUESTED 6 | ||
195 | #define MD_RECOVERY_CHECK 7 | ||
192 | unsigned long recovery; | 196 | unsigned long recovery; |
193 | 197 | ||
194 | int in_sync; /* know to not need resync */ | 198 | int in_sync; /* know to not need resync */ |