Assemble: call map_update even when not starting the array.

For incremental assembly to work, we need to keep the 'map'
up-to-date even when not starting the array yet.

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2009-04-07 17:45:42 +10:00
parent c0d50ca584
commit 8b4e5ea926
1 changed files with 7 additions and 4 deletions

View File

@ -1235,13 +1235,16 @@ int assemble_container_content(struct supertype *st, int mdfd,
if (working == 0) {
close(mdfd);
return 1;/* Nothing new, don't try to start */
} else if (runstop > 0 ||
}
map_update(&map, fd2devnum(mdfd),
content->text_version,
content->uuid, chosen_name);
if (runstop > 0 ||
(working + preexist) >= content->array.working_disks) {
int err;
map_update(&map, fd2devnum(mdfd),
content->text_version,
content->uuid, chosen_name);
switch(content->array.level) {
case LEVEL_LINEAR:
case LEVEL_MULTIPATH: