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 'for-6.9/dm-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm

Pull device mapper fixes from Mike Snitzer:

- Fix 6.9 regression so that DM device removal is performed
synchronously by default.

Asynchronous removal has always been possible but it isn't the
default. It is important that synchronous removal be preserved,
otherwise it is an interface change that breaks lvm2.

- Remove errant semicolon in drivers/md/dm-vdo/murmurhash3.c

* tag 'for-6.9/dm-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
dm: restore synchronous close of device mapper block device
dm vdo murmurhash: remove unneeded semicolon

+9 -3
+1 -1
drivers/md/dm-vdo/murmurhash3.c
··· 137 137 break; 138 138 default: 139 139 break; 140 - }; 140 + } 141 141 } 142 142 /* finalization */ 143 143
+8 -2
drivers/md/dm.c
··· 765 765 return td; 766 766 767 767 out_blkdev_put: 768 - fput(bdev_file); 768 + __fput_sync(bdev_file); 769 769 out_free_td: 770 770 kfree(td); 771 771 return ERR_PTR(r); ··· 778 778 { 779 779 if (md->disk->slave_dir) 780 780 bd_unlink_disk_holder(td->dm_dev.bdev, md->disk); 781 - fput(td->dm_dev.bdev_file); 781 + 782 + /* Leverage async fput() if DMF_DEFERRED_REMOVE set */ 783 + if (unlikely(test_bit(DMF_DEFERRED_REMOVE, &md->flags))) 784 + fput(td->dm_dev.bdev_file); 785 + else 786 + __fput_sync(td->dm_dev.bdev_file); 787 + 782 788 put_dax(td->dm_dev.dax_dev); 783 789 list_del(&td->list); 784 790 kfree(td);