summaryrefslogtreecommitdiffstats
path: root/include/linux/raid
diff options
context:
space:
mode:
authorBernd Schubert <bs@q-leap.de>2008-05-23 13:04:38 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-05-24 09:56:10 -0700
commit90b08710e41a07d4ff0fb8940dcce3a552991a56 (patch)
tree8e45d1c6d9b4020099fd36781065bf8b8fdb76e4 /include/linux/raid
parent4f54b0e9485644a3c5fca2ae43bcbe7376825747 (diff)
downloadlinux-stable-90b08710e41a07d4ff0fb8940dcce3a552991a56.tar.gz
linux-stable-90b08710e41a07d4ff0fb8940dcce3a552991a56.tar.bz2
linux-stable-90b08710e41a07d4ff0fb8940dcce3a552991a56.zip
md: allow parallel resync of md-devices.
In some configurations, a raid6 resync can be limited by CPU speed (Calculating P and Q and moving data) rather than by device speed. In these cases there is nothing to be gained byt serialising resync of arrays that share a device, and doing the resync in parallel can provide benefit. So add a sysfs tunable to flag an array as being allowed to resync in parallel with other arrays that use (a different part of) the same device. Signed-off-by: Bernd Schubert <bs@q-leap.de> Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/raid')
-rw-r--r--include/linux/raid/md_k.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h
index 812ffa590cff..a6d7ab688ede 100644
--- a/include/linux/raid/md_k.h
+++ b/include/linux/raid/md_k.h
@@ -180,6 +180,9 @@ struct mddev_s
int sync_speed_min;
int sync_speed_max;
+ /* resync even though the same disks are shared among md-devices */
+ int parallel_resync;
+
int ok_start_degraded;
/* recovery/resync flags
* NEEDED: we might need to start a resync/recover