diff options
author | NeilBrown <neilb@cse.unsw.edu.au> | 2005-06-21 20:17:11 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-21 22:07:42 -0400 |
commit | fca4d848f0e6fafdc2b25f8a0cf1e76935f13ac2 (patch) | |
tree | cabed019bfe5d00ddbe06e349f20cff78ab6f6bf /drivers/md/raid6main.c | |
parent | c361777fb9347a4d16b82272f7d3b234e94bef2d (diff) |
[PATCH] md: merge md_enter_safemode into md_check_recovery
md_enter_safemode checks if it is time to mark the md superblock as 'clean'.
i.e. if all writes have completed and a suitable delay has passed.
This is currently called from md_handle_safemode which in-turn is called
(almost) every time md_check_recovery is called, and from the end of
md_do_sync which causes the mddev->thread to run, which will always call
md_check_recovery as well.
So it doesn't need to be a separate function and fits quite well into
md_check_recovery.
The "almost" is because multipathd calls md_check_recovery but not
md_handle_safemode. This is OK because the code from md_enter_safemode is a
no-op if mddev->safemode == 0, which it always is for a multipathd (providing
we don't allow it to be set to 2 on a signal...)
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/md/raid6main.c')
-rw-r--r-- | drivers/md/raid6main.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/md/raid6main.c b/drivers/md/raid6main.c index 908edd78a792..9d0e0e42a3be 100644 --- a/drivers/md/raid6main.c +++ b/drivers/md/raid6main.c | |||
@@ -1705,7 +1705,6 @@ static void raid6d (mddev_t *mddev) | |||
1705 | PRINTK("+++ raid6d active\n"); | 1705 | PRINTK("+++ raid6d active\n"); |
1706 | 1706 | ||
1707 | md_check_recovery(mddev); | 1707 | md_check_recovery(mddev); |
1708 | md_handle_safemode(mddev); | ||
1709 | 1708 | ||
1710 | handled = 0; | 1709 | handled = 0; |
1711 | spin_lock_irq(&conf->device_lock); | 1710 | spin_lock_irq(&conf->device_lock); |