]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
FIX: Reset disk state if disk is missing
authorKrzysztof Wojcik <krzysztof.wojcik@intel.com>
Thu, 10 Mar 2011 06:07:04 +0000 (17:07 +1100)
committerNeilBrown <neilb@suse.de>
Thu, 10 Mar 2011 06:07:04 +0000 (17:07 +1100)
If we can't read actual disk state, it shoud be initiated
to 0.
Overwise it may be out of date value resulting false action
later in code (e.g. set disk to improper state).

Signed-off-by: Krzysztof Wojcik <krzysztof.wojcik@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
monitor.c

index 59b4181954c24c0dc209e93c17c6ba391e2a4eab..65a7034ee22112db103076e2d1eda4dde88e3ff9 100644 (file)
--- a/monitor.c
+++ b/monitor.c
@@ -228,6 +228,7 @@ static int read_and_act(struct active_array *a)
        sync_completed = read_sync_completed(a->sync_completed_fd);
        for (mdi = a->info.devs; mdi ; mdi = mdi->next) {
                mdi->next_state = 0;
+               mdi->curr_state = 0;
                if (mdi->state_fd >= 0) {
                        mdi->recovery_start = read_resync_start(mdi->recovery_fd);
                        mdi->curr_state = read_dev_state(mdi->state_fd);