Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'md-3.3-fixes' of git://neil.brown.name/md

Some simple md-related fixes.

1/ two small fixes to ensure we handle an interrupted resync properly.
2/ avoid loading the bitmap multiple times in dm-raid

* tag 'md-3.3-fixes' of git://neil.brown.name/md:
md: two small fixes to handling interrupt resync.
Prevent DM RAID from loading bitmap twice.

+12 -5
+9 -3
drivers/md/dm-raid.c
··· 56 56 struct raid_set { 57 57 struct dm_target *ti; 58 58 59 - uint64_t print_flags; 59 + uint32_t bitmap_loaded; 60 + uint32_t print_flags; 60 61 61 62 struct mddev md; 62 63 struct raid_type *raid_type; ··· 1086 1085 raid_param_cnt += 2; 1087 1086 } 1088 1087 1089 - raid_param_cnt += (hweight64(rs->print_flags & ~DMPF_REBUILD) * 2); 1088 + raid_param_cnt += (hweight32(rs->print_flags & ~DMPF_REBUILD) * 2); 1090 1089 if (rs->print_flags & (DMPF_SYNC | DMPF_NOSYNC)) 1091 1090 raid_param_cnt--; 1092 1091 ··· 1198 1197 { 1199 1198 struct raid_set *rs = ti->private; 1200 1199 1201 - bitmap_load(&rs->md); 1200 + if (!rs->bitmap_loaded) { 1201 + bitmap_load(&rs->md); 1202 + rs->bitmap_loaded = 1; 1203 + } else 1204 + md_wakeup_thread(rs->md.thread); 1205 + 1202 1206 mddev_resume(&rs->md); 1203 1207 } 1204 1208
+3 -2
drivers/md/md.c
··· 7333 7333 printk(KERN_INFO 7334 7334 "md: checkpointing %s of %s.\n", 7335 7335 desc, mdname(mddev)); 7336 - mddev->recovery_cp = mddev->curr_resync; 7336 + mddev->recovery_cp = 7337 + mddev->curr_resync_completed; 7337 7338 } 7338 7339 } else 7339 7340 mddev->recovery_cp = MaxSector; ··· 7352 7351 rcu_read_unlock(); 7353 7352 } 7354 7353 } 7354 + skip: 7355 7355 set_bit(MD_CHANGE_DEVS, &mddev->flags); 7356 7356 7357 - skip: 7358 7357 if (!test_bit(MD_RECOVERY_INTR, &mddev->recovery)) { 7359 7358 /* We completed so min/max setting can be forgotten if used. */ 7360 7359 if (test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery))