diff options
author | NeilBrown <neilb@suse.de> | 2010-06-01 05:37:29 -0400 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2010-07-25 22:53:08 -0400 |
commit | 252ac5221a71be72b7e7c7b7482af91e9c962e8c (patch) | |
tree | cb9542b1391dabc136ce0052eb28948e77a6e2e5 /drivers/md/raid5.c | |
parent | 2ac8740151b082f045e58010eb92560c3a23a0e9 (diff) |
md/plug: optionally use plugger to unplug an array during resync/recovery.
If an array doesn't have a 'queue' then md_do_sync cannot
unplug it.
In that case it will have a 'plugger', so make that available
to the mddev, and use it to unplug the array if needed.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/raid5.c')
-rw-r--r-- | drivers/md/raid5.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c index 84bb9aec2211..0a8173e650bb 100644 --- a/drivers/md/raid5.c +++ b/drivers/md/raid5.c | |||
@@ -5189,6 +5189,7 @@ static int run(mddev_t *mddev) | |||
5189 | md_set_array_sectors(mddev, raid5_size(mddev, 0, 0)); | 5189 | md_set_array_sectors(mddev, raid5_size(mddev, 0, 0)); |
5190 | 5190 | ||
5191 | plugger_init(&conf->plug, raid5_unplug); | 5191 | plugger_init(&conf->plug, raid5_unplug); |
5192 | mddev->plug = &conf->plug; | ||
5192 | if (mddev->queue) { | 5193 | if (mddev->queue) { |
5193 | /* read-ahead size must cover two whole stripes, which | 5194 | /* read-ahead size must cover two whole stripes, which |
5194 | * is 2 * (datadisks) * chunksize where 'n' is the | 5195 | * is 2 * (datadisks) * chunksize where 'n' is the |