From: Yu Kuai <yuku...@huawei.com>

Prepare to introduce CONFIG_MD_BITMAP.

Signed-off-by: Yu Kuai <yuku...@huawei.com>
---
 drivers/md/raid1.c | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
index 95dbf4aa5f64..cf55fa816cf7 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
@@ -2818,7 +2818,8 @@ static sector_t raid1_sync_request(struct mddev *mddev, 
sector_t sector_nr,
                else /* completed sync */
                        conf->fullsync = 0;
 
-               mddev->bitmap_ops->close_sync(mddev);
+               if (md_bitmap_enabled(mddev))
+                       mddev->bitmap_ops->close_sync(mddev);
                close_sync(conf);
 
                if (mddev_is_clustered(mddev)) {
@@ -2855,10 +2856,11 @@ static sector_t raid1_sync_request(struct mddev *mddev, 
sector_t sector_nr,
        /* we are incrementing sector_nr below. To be safe, we check against
         * sector_nr + two times RESYNC_SECTORS
         */
-
-       mddev->bitmap_ops->cond_end_sync(mddev, sector_nr,
-               mddev_is_clustered(mddev) &&
-               (sector_nr + 2 * RESYNC_SECTORS > conf->cluster_sync_high));
+       if (md_bitmap_enabled(mddev))
+               mddev->bitmap_ops->cond_end_sync(mddev, sector_nr,
+                       mddev_is_clustered(mddev) &&
+                       (sector_nr + 2 * RESYNC_SECTORS >
+                        conf->cluster_sync_high));
 
        if (raise_barrier(conf, sector_nr))
                return 0;
@@ -3339,15 +3341,17 @@ static int raid1_resize(struct mddev *mddev, sector_t 
sectors)
         * worth it.
         */
        sector_t newsize = raid1_size(mddev, sectors, 0);
-       int ret;
 
        if (mddev->external_size &&
            mddev->array_sectors > newsize)
                return -EINVAL;
 
-       ret = mddev->bitmap_ops->resize(mddev, newsize, 0);
-       if (ret)
-               return ret;
+       if (md_bitmap_enabled(mddev)) {
+               int ret = mddev->bitmap_ops->resize(mddev, newsize, 0);
+
+               if (ret)
+                       return ret;
+       }
 
        md_set_array_sectors(mddev, newsize);
        if (sectors > mddev->dev_sectors &&
-- 
2.39.2


Reply via email to