summaryrefslogtreecommitdiff
path: root/Create.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2009-11-17 13:08:55 +1100
committerNeilBrown <neilb@suse.de>2009-11-17 13:08:55 +1100
commit5f175898dedb2bb2635d4d1dcb2afa8c420d5eae (patch)
tree8da1e54dcedb1584b8227124375d7d73b650dc1d /Create.c
parentdf0d4ea04e34fc5d499056b00fa1e0a25f21453e (diff)
Increase default chunk size to 512K
This seems more appropriate for current (and recent) model drives than 64K. 64K is still the default for '--build' as changing that could corrupt data. 64K is also the default rounding for 'linear' on kernels older than 2.6.16. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Create.c')
-rw-r--r--Create.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/Create.c b/Create.c
index c96b3195..1fb40434 100644
--- a/Create.c
+++ b/Create.c
@@ -234,8 +234,15 @@ int Create(struct supertype *st, char *mddev,
case 10:
case 6:
case 0:
- case LEVEL_LINEAR: /* linear */
if (chunk == 0) {
+ chunk = 512;
+ if (verbose > 0)
+ fprintf(stderr, Name ": chunk size defaults to 512K\n");
+ }
+ break;
+ case LEVEL_LINEAR:
+ /* a chunksize of zero 0s perfectly valid (and preferred) since 2.6.16 */
+ if (get_linux_version() < 2006016 && chunk == 0) {
chunk = 64;
if (verbose > 0)
fprintf(stderr, Name ": chunk size defaults to 64K\n");