[PATCH] md: when resizing an array, we need to update resync_max_sectors as well as size

Without this, and attempt to 'grow' an array will claim to have synced the
extra part without actually having done anything.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
NeilBrown 2005-07-27 11:43:28 -07:00 committed by Linus Torvalds
parent b38817dda4
commit 4b5c7ae837
3 changed files with 3 additions and 0 deletions

View File

@ -1468,6 +1468,7 @@ static int raid1_resize(mddev_t *mddev, sector_t sectors)
set_bit(MD_RECOVERY_NEEDED, &mddev->recovery); set_bit(MD_RECOVERY_NEEDED, &mddev->recovery);
} }
mddev->size = mddev->array_size; mddev->size = mddev->array_size;
mddev->resync_max_sectors = sectors;
return 0; return 0;
} }

View File

@ -1931,6 +1931,7 @@ static int raid5_resize(mddev_t *mddev, sector_t sectors)
set_bit(MD_RECOVERY_NEEDED, &mddev->recovery); set_bit(MD_RECOVERY_NEEDED, &mddev->recovery);
} }
mddev->size = sectors /2; mddev->size = sectors /2;
mddev->resync_max_sectors = sectors;
return 0; return 0;
} }

View File

@ -2095,6 +2095,7 @@ static int raid6_resize(mddev_t *mddev, sector_t sectors)
set_bit(MD_RECOVERY_NEEDED, &mddev->recovery); set_bit(MD_RECOVERY_NEEDED, &mddev->recovery);
} }
mddev->size = sectors /2; mddev->size = sectors /2;
mddev->resync_max_sectors = sectors;
return 0; return 0;
} }