Skip to content

Commit 12c612e

Browse files
committed
Merge tag 'md-6.12-20240829' of https://git.kernel.org/pub/scm/linux/kernel/git/song/md into for-6.12/block
Pull MD updates from Song: "Major changes in this set are: 1. md-bitmap refactoring, by Yu Kuai; 2. raid5 performance optimization, by Artur Paszkiewicz; 3. Other small fixes, by Yu Kuai and Chen Ni." * tag 'md-6.12-20240829' of https://git.kernel.org/pub/scm/linux/kernel/git/song/md: (49 commits) md/raid5: rename wait_for_overlap to wait_for_reshape md/raid5: only add to wq if reshape is in progress md/raid5: use wait_on_bit() for R5_Overlap md: Remove flush handling md/md-bitmap: make in memory structure internal md/md-bitmap: merge md_bitmap_enabled() into bitmap_operations md/md-bitmap: merge md_bitmap_wait_behind_writes() into bitmap_operations md/md-bitmap: merge md_bitmap_free() into bitmap_operations md/md-bitmap: merge md_bitmap_set_pages() into struct bitmap_operations md/md-bitmap: merge md_bitmap_copy_from_slot() into struct bitmap_operation. md/md-bitmap: merge get_bitmap_from_slot() into bitmap_operations md/md-bitmap: merge md_bitmap_resize() into bitmap_operations md/md-bitmap: pass in mddev directly for md_bitmap_resize() md/md-bitmap: merge md_bitmap_daemon_work() into bitmap_operations md/md-bitmap: merge bitmap_unplug() into bitmap_operations md/md-bitmap: merge md_bitmap_unplug_async() into md_bitmap_unplug() md/md-bitmap: merge md_bitmap_sync_with_cluster() into bitmap_operations md/md-bitmap: merge md_bitmap_cond_end_sync() into bitmap_operations md/md-bitmap: merge md_bitmap_close_sync() into bitmap_operations md/md-bitmap: merge md_bitmap_end_sync() into bitmap_operations ...
2 parents 1251580 + fb16787 commit 12c612e

File tree

12 files changed

+832
-765
lines changed

12 files changed

+832
-765
lines changed

drivers/md/dm-raid.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3949,7 +3949,9 @@ static int __load_dirty_region_bitmap(struct raid_set *rs)
39493949
/* Try loading the bitmap unless "raid0", which does not have one */
39503950
if (!rs_is_raid0(rs) &&
39513951
!test_and_set_bit(RT_FLAG_RS_BITMAP_LOADED, &rs->runtime_flags)) {
3952-
r = md_bitmap_load(&rs->md);
3952+
struct mddev *mddev = &rs->md;
3953+
3954+
r = mddev->bitmap_ops->load(mddev);
39533955
if (r)
39543956
DMERR("Failed to load bitmap");
39553957
}
@@ -4066,7 +4068,8 @@ static int raid_preresume(struct dm_target *ti)
40664068
mddev->bitmap_info.chunksize != to_bytes(rs->requested_bitmap_chunk_sectors)))) {
40674069
int chunksize = to_bytes(rs->requested_bitmap_chunk_sectors) ?: mddev->bitmap_info.chunksize;
40684070

4069-
r = md_bitmap_resize(mddev->bitmap, mddev->dev_sectors, chunksize, 0);
4071+
r = mddev->bitmap_ops->resize(mddev, mddev->dev_sectors,
4072+
chunksize, false);
40704073
if (r)
40714074
DMERR("Failed to resize bitmap");
40724075
}

0 commit comments

Comments
 (0)