diff options
author | NeilBrown <neilb@suse.de> | 2006-03-27 04:18:10 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-27 11:45:01 -0500 |
commit | 292695531ae4019bb15deedc121b218d1908b648 (patch) | |
tree | fb205eae13c3f3410f6ea44557b1c96b075a4d44 /drivers/md/md.c | |
parent | ccfcc3c10b2a5cb8fd3c918199a4ff904fc6fb3e (diff) |
[PATCH] md: Final stages of raid5 expand code
This patch adds raid5_reshape and end_reshape which will start and finish the
reshape processes.
raid5_reshape is only enabled in CONFIG_MD_RAID5_RESHAPE is set, to discourage
accidental use.
Read the 'help' for the CONFIG_MD_RAID5_RESHAPE entry.
and Make sure that you have backups, just in case.
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/md/md.c')
-rw-r--r-- | drivers/md/md.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c index 8e65986bc63f..d169bc964676 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -158,11 +158,12 @@ static int start_readonly; | |||
158 | */ | 158 | */ |
159 | static DECLARE_WAIT_QUEUE_HEAD(md_event_waiters); | 159 | static DECLARE_WAIT_QUEUE_HEAD(md_event_waiters); |
160 | static atomic_t md_event_count; | 160 | static atomic_t md_event_count; |
161 | static void md_new_event(mddev_t *mddev) | 161 | void md_new_event(mddev_t *mddev) |
162 | { | 162 | { |
163 | atomic_inc(&md_event_count); | 163 | atomic_inc(&md_event_count); |
164 | wake_up(&md_event_waiters); | 164 | wake_up(&md_event_waiters); |
165 | } | 165 | } |
166 | EXPORT_SYMBOL_GPL(md_new_event); | ||
166 | 167 | ||
167 | /* | 168 | /* |
168 | * Enables to iterate over all existing md arrays | 169 | * Enables to iterate over all existing md arrays |
@@ -4467,7 +4468,7 @@ static DECLARE_WAIT_QUEUE_HEAD(resync_wait); | |||
4467 | 4468 | ||
4468 | #define SYNC_MARKS 10 | 4469 | #define SYNC_MARKS 10 |
4469 | #define SYNC_MARK_STEP (3*HZ) | 4470 | #define SYNC_MARK_STEP (3*HZ) |
4470 | static void md_do_sync(mddev_t *mddev) | 4471 | void md_do_sync(mddev_t *mddev) |
4471 | { | 4472 | { |
4472 | mddev_t *mddev2; | 4473 | mddev_t *mddev2; |
4473 | unsigned int currspeed = 0, | 4474 | unsigned int currspeed = 0, |
@@ -4704,6 +4705,7 @@ static void md_do_sync(mddev_t *mddev) | |||
4704 | set_bit(MD_RECOVERY_DONE, &mddev->recovery); | 4705 | set_bit(MD_RECOVERY_DONE, &mddev->recovery); |
4705 | md_wakeup_thread(mddev->thread); | 4706 | md_wakeup_thread(mddev->thread); |
4706 | } | 4707 | } |
4708 | EXPORT_SYMBOL_GPL(md_do_sync); | ||
4707 | 4709 | ||
4708 | 4710 | ||
4709 | /* | 4711 | /* |