[dm-devel] [git pull] device mapper changes for 4.11
Mike Snitzer
snitzer at redhat.com
Tue Feb 21 19:26:05 UTC 2017
Hi Linus,
The following changes since commit 7a308bb3016f57e5be11a677d15b821536419d36:
Linux 4.10-rc5 (2017-01-22 12:54:15 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git tags/dm-4.11-changes
for you to fetch changes up to d67a5f4b5947aba4bfe9a80a2b86079c215ca755:
dm: flush queued bios when process blocks to avoid deadlock (2017-02-17 00:54:10 -0500)
Please pull, thanks.
Mike
----------------------------------------------------------------
- Fix dm-raid transient device failure processing and other smaller
tweaks.
- Add journal support to the DM raid target to close the 'write hole' on
raid 4/5/6.
- Fix dm-cache corruption, due to rounding bug, when cache exceeds 2TB.
- Add 'metadata2' feature to dm-cache to separate the dirty bitset out
from other cache metadata. This improves speed of shutting down
a large cache device (which implies writing out dirty bits).
- Fix a memory leak during dm-stats data structure destruction.
- Fix a DM multipath round-robin path selector performance regression
that was caused by less precise balancing across all paths.
- Lastly, introduce a DM core fix for a long-standing DM snapshot
deadlock that is rooted in the complexity of the device stack used in
conjunction with block core maintaining bios on current->bio_list to
manage recursion in generic_make_request(). A more comprehensive fix
to block core (and its hook in the cpu scheduler) would be wonderful
but this DM-specific fix is pragmatic considering how difficult it has
been to make progress on a generic fix.
----------------------------------------------------------------
Bhumika Goyal (1):
dm space map metadata: constify dm_space_map structures
Heinz Mauelshagen (5):
dm raid: fix transient device failure processing
dm raid: be prepared to accept arbitrary '- -' tuples
dm raid: add raid4/5/6 journaling support
dm raid: use read_disk_sb() throughout
dm raid: use mddev rather than rdev->mddev
Joe Thornber (10):
dm cache: fix corruption seen when using cache > 2TB
dm block manager: add unlikely() annotations on dm_bufio error paths
dm space map common: memcpy the disk root to ensure it's arch aligned
dm btree: use GFP_NOFS in dm_btree_del()
dm bitset: introduce cursor api
dm cache metadata: use bitset cursor api to load discard bitset
dm cache metadata: add "metadata2" feature
dm bitset: add dm_bitset_new()
dm cache metadata: use dm_bitset_new() to create the dirty bitset in format 2
dm persistent data: add cursor skip functions to the cursor APIs
Mike Snitzer (4):
dm raid: cleanup awkward branching in raid_message() option processing
dm cache metadata: name the cache block that couldn't be loaded
dm cache metadata: use cursor api in blocks_are_clean_separate_dirty()
dm round robin: revert "use percpu 'repeat_count' and 'current_path'"
Mikulas Patocka (2):
dm stats: fix a leaked s->histogram_boundaries array
dm: flush queued bios when process blocks to avoid deadlock
Documentation/device-mapper/cache.txt | 4 +
Documentation/device-mapper/dm-raid.txt | 17 +
drivers/md/dm-cache-metadata.c | 353 +++++++++++++++++----
drivers/md/dm-cache-metadata.h | 11 +-
drivers/md/dm-cache-target.c | 44 +--
drivers/md/dm-raid.c | 296 ++++++++++++-----
drivers/md/dm-round-robin.c | 67 +---
drivers/md/dm-stats.c | 1 +
drivers/md/dm.c | 55 ++++
drivers/md/persistent-data/dm-array.c | 21 ++
drivers/md/persistent-data/dm-array.h | 1 +
drivers/md/persistent-data/dm-bitset.c | 146 +++++++++
drivers/md/persistent-data/dm-bitset.h | 39 +++
drivers/md/persistent-data/dm-block-manager.c | 8 +-
drivers/md/persistent-data/dm-btree.c | 18 +-
drivers/md/persistent-data/dm-btree.h | 1 +
drivers/md/persistent-data/dm-space-map-common.c | 16 +-
drivers/md/persistent-data/dm-space-map-metadata.c | 4 +-
18 files changed, 875 insertions(+), 227 deletions(-)
More information about the dm-devel
mailing list