|
@@ -571,11 +571,11 @@ static int bitmap_read_sb(struct bitmap *bitmap)
|
|
re_read:
|
|
re_read:
|
|
/* If cluster_slot is set, the cluster is setup */
|
|
/* If cluster_slot is set, the cluster is setup */
|
|
if (bitmap->cluster_slot >= 0) {
|
|
if (bitmap->cluster_slot >= 0) {
|
|
- long long bm_blocks;
|
|
|
|
|
|
+ sector_t bm_blocks;
|
|
|
|
|
|
bm_blocks = bitmap->mddev->resync_max_sectors / (bitmap->mddev->bitmap_info.chunksize >> 9);
|
|
bm_blocks = bitmap->mddev->resync_max_sectors / (bitmap->mddev->bitmap_info.chunksize >> 9);
|
|
bm_blocks = bm_blocks << 3;
|
|
bm_blocks = bm_blocks << 3;
|
|
- bm_blocks = DIV_ROUND_UP(bm_blocks, 4096);
|
|
|
|
|
|
+ bm_blocks = DIV_ROUND_UP_SECTOR_T(bm_blocks, 4096);
|
|
bitmap->mddev->bitmap_info.offset += bitmap->cluster_slot * (bm_blocks << 3);
|
|
bitmap->mddev->bitmap_info.offset += bitmap->cluster_slot * (bm_blocks << 3);
|
|
pr_info("%s:%d bm slot: %d offset: %llu\n", __func__, __LINE__,
|
|
pr_info("%s:%d bm slot: %d offset: %llu\n", __func__, __LINE__,
|
|
bitmap->cluster_slot, (unsigned long long)bitmap->mddev->bitmap_info.offset);
|
|
bitmap->cluster_slot, (unsigned long long)bitmap->mddev->bitmap_info.offset);
|