]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Monitor: write meta data in readonly state, sometimes
authormwilck@arcor.de <mwilck@arcor.de>
Tue, 24 Sep 2013 18:53:18 +0000 (20:53 +0200)
committerNeilBrown <neilb@suse.de>
Wed, 16 Oct 2013 04:31:30 +0000 (15:31 +1100)
This patch reverts 24a216bf:
"Monitor: Don't write metadata in inactive array state".

While it's true that writing meta data is usually not necessary
in readonly state, there is one important exception: if a
disk goes faulty, we want to record that, even if the array is
inactive.

We might as well just revert 24a216bf, because with the recently
submitted patch
"Monitor: don't set arrays dirty after transition to read-only"
those meta data writes that really annoying (for a clean, readonly,
healthy array during startup) are gone anyway.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
monitor.c

index 3b57ed05ec9b801a8c3ef97c2f3f3d0bd93cd540..f81e707532f6036aa5ba45d669a52e2eeb9ef9ca 100644 (file)
--- a/monitor.c
+++ b/monitor.c
@@ -421,8 +421,7 @@ static int read_and_act(struct active_array *a)
        if (sync_completed > a->last_checkpoint)
                a->last_checkpoint = sync_completed;
 
-       if (deactivate || a->curr_state >= clean)
-               a->container->ss->sync_metadata(a->container);
+       a->container->ss->sync_metadata(a->container);
        dprintf("%s(%d): state:%s action:%s next(", __func__, a->info.container_member,
                array_states[a->curr_state], sync_actions[a->curr_action]);