mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-01 06:04:48 -04:00
md/md-bitmap: merge md_bitmap_flush() into bitmap_operations
So that the implementation won't be exposed, and it'll be possible to invent a new bitmap by replacing bitmap_operations. Signed-off-by: Yu Kuai <yukuai3@huawei.com> Link: https://lore.kernel.org/r/20240826074452.1490072-17-yukuai1@huaweicloud.com Signed-off-by: Song Liu <song@kernel.org>
This commit is contained in:
@@ -1773,10 +1773,7 @@ void md_bitmap_dirty_bits(struct bitmap *bitmap, unsigned long s, unsigned long
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* flush out any pending updates
|
||||
*/
|
||||
void md_bitmap_flush(struct mddev *mddev)
|
||||
static void bitmap_flush(struct mddev *mddev)
|
||||
{
|
||||
struct bitmap *bitmap = mddev->bitmap;
|
||||
long sleep;
|
||||
@@ -2725,6 +2722,7 @@ static struct bitmap_operations bitmap_ops = {
|
||||
.create = bitmap_create,
|
||||
.load = bitmap_load,
|
||||
.destroy = bitmap_destroy,
|
||||
.flush = bitmap_flush,
|
||||
};
|
||||
|
||||
void mddev_set_bitmap_ops(struct mddev *mddev)
|
||||
|
||||
@@ -250,13 +250,13 @@ struct bitmap_operations {
|
||||
int (*create)(struct mddev *mddev, int slot);
|
||||
int (*load)(struct mddev *mddev);
|
||||
void (*destroy)(struct mddev *mddev);
|
||||
void (*flush)(struct mddev *mddev);
|
||||
};
|
||||
|
||||
/* the bitmap API */
|
||||
void mddev_set_bitmap_ops(struct mddev *mddev);
|
||||
|
||||
/* these are used only by md/bitmap */
|
||||
void md_bitmap_flush(struct mddev *mddev);
|
||||
|
||||
void md_bitmap_print_sb(struct bitmap *bitmap);
|
||||
void md_bitmap_update_sb(struct bitmap *bitmap);
|
||||
|
||||
@@ -6463,7 +6463,8 @@ static void __md_stop_writes(struct mddev *mddev)
|
||||
mddev->pers->quiesce(mddev, 1);
|
||||
mddev->pers->quiesce(mddev, 0);
|
||||
}
|
||||
md_bitmap_flush(mddev);
|
||||
|
||||
mddev->bitmap_ops->flush(mddev);
|
||||
|
||||
if (md_is_rdwr(mddev) &&
|
||||
((!mddev->in_sync && !mddev_is_clustered(mddev)) ||
|
||||
|
||||
Reference in New Issue
Block a user