[dm-devel] [git pull] device mapper changes for 6.4
Mike Snitzer
snitzer at kernel.org
Mon Apr 24 17:06:20 UTC 2023
Hi Linus,
The following changes since commit 666eed46769d929c3e13636134ecfc67d75ef548:
dm: fix __send_duplicate_bios() to always allow for splitting IO (2023-03-30 15:54:32 -0400)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git tags/for-6.4/dm-changes
for you to fetch changes up to 38d11da522aacaa05898c734a1cec86f1e611129:
dm: don't lock fs when the map is NULL in process of resume (2023-04-19 11:51:37 -0400)
Please pull, thanks.
Mike
----------------------------------------------------------------
- Split dm-bufio's rw_semaphore and rbtree. Offers improvements to
dm-bufio's locking to allow increased concurrent IO -- particularly
for read access for buffers already in dm-bufio's cache.
- Also split dm-bio-prison-v1's spinlock and rbtree with comparable
aim at improving concurrent IO (for the DM thinp target).
- Both the dm-bufio and dm-bio-prison-v1 scaling of the number of
locks and rbtrees used are managed by dm_num_hash_locks(). And the
hash function used by both is dm_hash_locks_index().
- Allow DM targets to require DISCARD, WRITE_ZEROES and SECURE_ERASE
to be split at the target specified boundary (in terms of
max_discard_sectors, max_write_zeroes_sectors and
max_secure_erase_sectors respectively).
- DM verity error handling fix for check_at_most_once on FEC.
- Update DM verity target to emit audit events on verification failure
and more.
- DM core ->io_hints improvements needed in support of new discard
support that is added to the DM "zero" and "error" targets.
- Fix missing kmem_cache_destroy() call in initialization error path
of both the DM integrity and DM clone targets.
- A couple fixes for DM flakey, also add "error_reads" feature.
- Fix DM core's resume to not lock FS when the DM map is NULL;
otherwise initial table load can race with FS mount that takes
superblock's ->s_umount rw_semaphore.
- Various small improvements to both DM core and DM targets.
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEEJfWUX4UqZ4x1O2wixSPxCi2dA1oFAmRGtWwACgkQxSPxCi2d
A1pBqgf/W7op3/PdXBI+tlb7j05MEvMaZx0vz3l+qF36SMglaP1yZLZPiU9MCX2V
Sm2t4p7VEn5gAxvmzqa0/pLINC7u/m1IW9O6y3qdOEFAgwJ2st+/yaDqgguN5kiA
uOzecyDfR7n0WU5rkaO2EUneO7MrYweLR3IROFNFNHndl4bVJOafDcOJvmsI4YYe
5PIMHb+AGND+O2lIVOvSiPD6e85trcRWkr2X6DUYlllV3XEaBLke5MP1OAp+o/Y5
MFPfznnuiEvcFAzsBoDebC5j7RBQjHw12Bp8ltZV1ZFbdvluw9q1GD2/uyR5UolV
jmerZXKThV7lRJYqilUmt74Rxl2JSg==
=zPkM
-----END PGP SIGNATURE-----
----------------------------------------------------------------
Joe Thornber (8):
dm bufio: remove unused dm_bufio_release_move interface
dm bufio: add LRU abstraction
dm bufio: add dm_buffer_cache abstraction
dm bufio: improve concurrent IO performance
dm bufio: add lock_history optimization for cache iterators
dm thin: speed up cell_defer_no_holder()
dm bio prison v1: improve concurrent IO performance
dm: improve hash_locks sizing and hash function
Li Lingfeng (1):
dm: don't lock fs when the map is NULL in process of resume
Michael Weiß (1):
dm verity: emit audit events on verification failure and more
Mike Snitzer (16):
dm bufio: use WARN_ON in dm_bufio_client_destroy and dm_bufio_exit
dm bufio: never crash if dm_bufio_in_request()
dm bufio: don't bug for clear developer oversight
dm bufio: move dm_bufio_client members to avoid spanning cachelines
dm: split discards further if target sets max_discard_granularity
dm bio prison v1: add dm_cell_key_has_valid_range
dm: add dm_num_hash_locks()
dm bufio: prepare to intelligently size dm_buffer_cache's buffer_trees
dm bufio: intelligently size dm_buffer_cache's buffer_trees
dm bio prison v1: prepare to intelligently size dm_bio_prison's prison_regions
dm bio prison v1: intelligently size dm_bio_prison's prison_regions
dm clone: call kmem_cache_destroy() in dm_clone_init() error path
dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
dm: allow targets to require splitting WRITE_ZEROES and SECURE_ERASE
dm: unexport dm_get_queue_limits()
dm ioctl: fix nested locking in table_clear() to remove deadlock concern
Mikulas Patocka (8):
dm bufio: use waitqueue_active in __free_buffer_wake
dm bufio: use multi-page bio vector
dm table: allow targets without devices to set ->io_hints
dm zero: add discard support
dm error: add discard support
dm flakey: fix a crash with invalid table line
dm flakey: remove trailing space in the table line
dm flakey: add an "error_reads" option
Tom Rix (1):
dm raid: remove unused d variable
Yangtao Li (3):
dm: push error reporting down to dm_register_target()
dm mirror: add DMERR message if alloc_workqueue fails
dm: add helper macro for simple DM target module init and exit
Yeongjin Gil (1):
dm verity: fix error handling for check_at_most_once on FEC
Yu Zhe (1):
dm: remove unnecessary (void*) conversions
.../admin-guide/device-mapper/dm-flakey.rst | 4 +
drivers/md/dm-bio-prison-v1.c | 94 +-
drivers/md/dm-bio-prison-v1.h | 15 +
drivers/md/dm-bufio.c | 1988 ++++++++++++++------
drivers/md/dm-cache-target.c | 1 -
drivers/md/dm-clone-target.c | 2 +-
drivers/md/dm-crypt.c | 20 +-
drivers/md/dm-delay.c | 26 +-
drivers/md/dm-dust.c | 19 +-
drivers/md/dm-ebs-target.c | 19 +-
drivers/md/dm-era-target.c | 22 +-
drivers/md/dm-flakey.c | 71 +-
drivers/md/dm-integrity.c | 15 +-
drivers/md/dm-io.c | 4 +-
drivers/md/dm-ioctl.c | 12 +-
drivers/md/dm-kcopyd.c | 4 +-
drivers/md/dm-linear.c | 6 +-
drivers/md/dm-log-writes.c | 21 +-
drivers/md/dm-log.c | 24 +-
drivers/md/dm-mpath.c | 5 +-
drivers/md/dm-raid.c | 22 +-
drivers/md/dm-raid1.c | 24 +-
drivers/md/dm-snap-persistent.c | 2 +-
drivers/md/dm-snap.c | 12 +-
drivers/md/dm-stripe.c | 4 +-
drivers/md/dm-switch.c | 20 +-
drivers/md/dm-table.c | 6 +-
drivers/md/dm-target.c | 20 +-
drivers/md/dm-thin.c | 125 +-
drivers/md/dm-unstripe.c | 14 +-
drivers/md/dm-verity-fec.c | 4 +-
drivers/md/dm-verity-target.c | 42 +-
drivers/md/dm-writecache.c | 22 +-
drivers/md/dm-zero.c | 31 +-
drivers/md/dm-zoned-metadata.c | 6 +-
drivers/md/dm-zoned-target.c | 16 +-
drivers/md/dm.c | 47 +-
drivers/md/dm.h | 22 +
include/linux/device-mapper.h | 40 +-
include/linux/dm-bufio.h | 6 -
include/uapi/linux/dm-ioctl.h | 4 +-
41 files changed, 1777 insertions(+), 1084 deletions(-)
More information about the dm-devel
mailing list