summaryrefslogtreecommitdiffstats
path: root/Assemble.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2009-04-14 10:19:02 +1000
committerNeilBrown <neilb@suse.de>2009-04-14 10:19:02 +1000
commit462906cdeebc07875a4c8653c86ca02c09280f78 (patch)
tree5af5fdb38d3863f9ca595806d849b68725d7d02b /Assemble.c
parenta9934ce44184660332549965c7d83a6a023ffd33 (diff)
downloadmdadm-462906cdeebc07875a4c8653c86ca02c09280f78.tar.gz
mdadm-462906cdeebc07875a4c8653c86ca02c09280f78.tar.xz
mdadm-462906cdeebc07875a4c8653c86ca02c09280f78.zip
incremental_container: preserve 'in_sync' flag when adding to existing array.
When building container members with -IR, we need to ensure that devices added to an active array preserve the 'in_sync' status so they don't needlessly get rebuilt. So allow sysfs_add_disk to do this (only works in kernels since 2.6.30) and pass the relevant flag down. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Assemble.c')
-rw-r--r--Assemble.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Assemble.c b/Assemble.c
index 73d6ee2..4cf5405 100644
--- a/Assemble.c
+++ b/Assemble.c
@@ -1228,7 +1228,7 @@ int assemble_container_content(struct supertype *st, int mdfd,
sysfs_free(sra);
for (dev = content->devs; dev; dev = dev->next)
- if (sysfs_add_disk(content, dev) == 0)
+ if (sysfs_add_disk(content, dev, 1) == 0)
working++;
else if (errno == EEXIST)
preexist++;