|
@@ -623,6 +623,7 @@ static int super_90_validate(mddev_t *mddev, mdk_rdev_t *rdev)
|
|
|
mddev->raid_disks = sb->raid_disks;
|
|
|
mddev->size = sb->size;
|
|
|
mddev->events = md_event(sb);
|
|
|
+ mddev->bitmap_offset = 0;
|
|
|
|
|
|
if (sb->state & (1<<MD_SB_CLEAN))
|
|
|
mddev->recovery_cp = MaxSector;
|
|
@@ -938,6 +939,7 @@ static int super_1_validate(mddev_t *mddev, mdk_rdev_t *rdev)
|
|
|
mddev->raid_disks = le32_to_cpu(sb->raid_disks);
|
|
|
mddev->size = le64_to_cpu(sb->size)/2;
|
|
|
mddev->events = le64_to_cpu(sb->events);
|
|
|
+ mddev->bitmap_offset = 0;
|
|
|
|
|
|
mddev->recovery_cp = le64_to_cpu(sb->resync_offset);
|
|
|
memcpy(mddev->uuid, sb->set_uuid, 16);
|
|
@@ -1824,6 +1826,7 @@ static int do_md_stop(mddev_t * mddev, int ro)
|
|
|
fput(mddev->bitmap_file);
|
|
|
mddev->bitmap_file = NULL;
|
|
|
}
|
|
|
+ mddev->bitmap_offset = 0;
|
|
|
|
|
|
/*
|
|
|
* Free resources if final stop
|