diff options
author | Neil Brown <neilb@notabene.brown> | 2008-06-27 18:31:41 -0400 |
---|---|---|
committer | Neil Brown <neilb@notabene.brown> | 2008-06-27 18:31:41 -0400 |
commit | 72a23c211e4587859d5bf61ac4962d76e593fb02 (patch) | |
tree | b35b554d7eb9c4b3a2cbc4d9378d362e5e56e44f /include/linux | |
parent | 0fd62b861eac7d2dea9b7e939953b20f37186ea1 (diff) |
Make sure all changes to md/sync_action are notified.
When the 'resync' thread starts or stops, when we explicitly
set sync_action, or when we determine that there is definitely nothing
to do, we notify sync_action.
To stop "sync_action" from occasionally showing the wrong value,
we introduce a new flags - MD_RECOVERY_RECOVER - to say that a
recovery is probably needed or happening, and we make sure
that we set MD_RECOVERY_RUNNING before clearing MD_RECOVERY_NEEDED.
Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/raid/md_k.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h index 780e0613e6d5..62aa9c9a6ddc 100644 --- a/include/linux/raid/md_k.h +++ b/include/linux/raid/md_k.h | |||
@@ -188,6 +188,7 @@ struct mddev_s | |||
188 | * NEEDED: we might need to start a resync/recover | 188 | * NEEDED: we might need to start a resync/recover |
189 | * RUNNING: a thread is running, or about to be started | 189 | * RUNNING: a thread is running, or about to be started |
190 | * SYNC: actually doing a resync, not a recovery | 190 | * SYNC: actually doing a resync, not a recovery |
191 | * RECOVER: doing recovery, or need to try it. | ||
191 | * INTR: resync needs to be aborted for some reason | 192 | * INTR: resync needs to be aborted for some reason |
192 | * DONE: thread is done and is waiting to be reaped | 193 | * DONE: thread is done and is waiting to be reaped |
193 | * REQUEST: user-space has requested a sync (used with SYNC) | 194 | * REQUEST: user-space has requested a sync (used with SYNC) |
@@ -198,6 +199,7 @@ struct mddev_s | |||
198 | */ | 199 | */ |
199 | #define MD_RECOVERY_RUNNING 0 | 200 | #define MD_RECOVERY_RUNNING 0 |
200 | #define MD_RECOVERY_SYNC 1 | 201 | #define MD_RECOVERY_SYNC 1 |
202 | #define MD_RECOVERY_RECOVER 2 | ||
201 | #define MD_RECOVERY_INTR 3 | 203 | #define MD_RECOVERY_INTR 3 |
202 | #define MD_RECOVERY_DONE 4 | 204 | #define MD_RECOVERY_DONE 4 |
203 | #define MD_RECOVERY_NEEDED 5 | 205 | #define MD_RECOVERY_NEEDED 5 |