From: Mike Snitzer <snitzer@redhat.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: dm-devel@redhat.com, linux-block@vger.kernel.org,
Alasdair G Kergon <agk@redhat.com>,
Dmitry Baryshkov <dmitry_baryshkov@mentor.com>,
Eric Biggers <ebiggers@google.com>,
Gabriel Krisman Bertazi <krisman@collabora.com>,
"Gustavo A. R. Silva" <gustavoars@kernel.org>,
Hannes Reinecke <hare@suse.de>,
Heinz Mauelshagen <heinzm@redhat.com>,
Khazhismel Kumykov <khazhy@google.com>,
Martin Wilck <mwilck@suse.com>,
Mikulas Patocka <mpatocka@redhat.com>,
Nathan Chancellor <natechancellor@gmail.com>,
YueHaibing <yuehaibing@huawei.com>,
Zhiqiang Liu <liuzhiqiang26@huawei.com>
Subject: Re: [git pull v3] device mapper changes for 5.8
Date: Wed, 10 Jun 2020 08:44:44 -0400 [thread overview]
Message-ID: <20200610124444.GA356@redhat.com> (raw)
In-Reply-To: <20200609135919.GA26994@redhat.com>
On Tue, Jun 09 2020 at 9:59am -0400,
Mike Snitzer <snitzer@redhat.com> wrote:
> [resending as v3 due to my From: email addr in v2 being inexplicably wrong]
The pr-tracker-bot responded to that email address and I missed it:
https://www.redhat.com/archives/dm-devel/2020-June/msg00067.html
I should've just looked at your tree. Thanks for your quick pull.
Sorry for the noise.
Mike
>
> Hi Linus,
>
> I had some miscommunication with Mikulas on his -ENOMEM sleep and retry
> changes for dm-crypt and dm-integrity, he no longer thinks them
> appropriate: https://www.redhat.com/archives/dm-devel/2020-June/msg00061.html
> So I dropped them via rebase and updated the tag (to avoid any
> potential for linux-stable churn due to Mikulas' commits having
> cc'd linux-stable). Hope that was the correct way forward...
>
> For the following changes there is one dm-zoned-metadata.c conflict that
> linux-next has been carrying for a while. See commit d77e96f277 ("Merge
> remote-tracking branch 'device-mapper/for-next'") from next-20200605.
> It resolves conflict from linux-block's commit 9398554fb3 ("block:
> remove the_error_sector argument to blkdev_issue_flush").
>
> The following changes since commit 2ef96a5bb12be62ef75b5828c0aab838ebb29cb8:
>
> Linux 5.7-rc5 (2020-05-10 15:16:58 -0700)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git tags/for-5.8/dm-changes
>
> for you to fetch changes up to 64611a15ca9da91ff532982429c44686f4593b5f:
>
> dm crypt: avoid truncating the logical block size (2020-06-05 14:59:59 -0400)
>
> Please pull, thanks!
> Mike
>
> ----------------------------------------------------------------
> - Largest change for this cycle is the DM zoned target's metadata
> version 2 feature that adds support for pairing regular block
> devices with a zoned device to ease performance impact associated
> with finite random zones of zoned device. Changes came in 3
> batches: first prepared for and then added the ability to pair a
> single regular block device, second was a batch of fixes to improve
> zoned's reclaim heuristic, third removed the limitation of only
> adding a single additional regular block device to allow many
> devices. Testing has shown linear scaling as more devices are
> added.
>
> - Add new emulated block size (ebs) target that emulates a smaller
> logical_block_size than a block device supports. Primary use-case
> is to emulate "512e" devices that have 512 byte logical_block_size
> and 4KB physical_block_size. This is useful to some legacy
> applications otherwise wouldn't be ablee to be used on 4K devices
> because they depend on issuing IO in 512 byte granularity.
>
> - Add discard interfaces to DM bufio. First consumer of the interface
> is the dm-ebs target that makes heavy use of dm-bufio.
>
> - Fix DM crypt's block queue_limits stacking to not truncate
> logic_block_size.
>
> - Add Documentation for DM integrity's status line.
>
> - Switch DMDEBUG from a compile time config option to instead use
> dynamic debug via pr_debug.
>
> - Fix DM multipath target's hueristic for how it manages
> "queue_if_no_path" state internally. DM multipath now avoids
> disabling "queue_if_no_path" unless it is actually needed (e.g. in
> response to configure timeout or explicit "fail_if_no_path"
> message). This fixes reports of spurious -EIO being reported back
> to userspace application during fault tolerance testing with an NVMe
> backend. Added various dynamic DMDEBUG messages to assist with
> debugging queue_if_no_path in the future.
>
> - Add a new DM multipath "Historical Service Time" Path Selector.
>
> - Fix DM multipath's dm_blk_ioctl() to switch paths on IO error.
>
> - Improve DM writecache target performance by using explicit
> cache flushing for target's single-threaded usecase and a small
> cleanup to remove unnecessary test in persistent_memory_claim.
>
> - Other small cleanups in DM core, dm-persistent-data, and DM integrity.
>
> ----------------------------------------------------------------
> Dmitry Baryshkov (1):
> dm crypt: support using encrypted keys
>
> Eric Biggers (1):
> dm crypt: avoid truncating the logical block size
>
> Gabriel Krisman Bertazi (1):
> dm mpath: pass IO start time to path selector
>
> Gustavo A. R. Silva (1):
> dm: replace zero-length array with flexible-array
>
> Hannes Reinecke (38):
> dm zoned: add 'status' callback
> dm zoned: add 'message' callback
> dm zoned: store zone id within the zone structure and kill dmz_id()
> dm zoned: use array for superblock zones
> dm zoned: store device in struct dmz_sb
> dm zoned: move fields from struct dmz_dev to dmz_metadata
> dm zoned: introduce dmz_metadata_label() to format device name
> dm zoned: Introduce dmz_dev_is_dying() and dmz_check_dev()
> dm zoned: remove 'dev' argument from reclaim
> dm zoned: replace 'target' pointer in the bio context
> dm zoned: use dmz_zone_to_dev() when handling metadata I/O
> dm zoned: add metadata logging functions
> dm zoned: Reduce logging output on startup
> dm zoned: ignore metadata zone in dmz_alloc_zone()
> dm zoned: metadata version 2
> dm: use dynamic debug instead of compile-time config option
> dm zoned: remove spurious newlines from debugging messages
> dm zoned: return NULL if dmz_get_zone_for_reclaim() fails to find a zone
> dm zoned: separate random and cache zones
> dm zoned: reclaim random zones when idle
> dm zoned: start reclaim with sequential zones
> dm zoned: terminate reclaim on congestion
> dm zoned: remove leftover hunk for switching to sequential zones
> dm zoned: add debugging message for reading superblocks
> dm zoned: avoid unnecessary device recalulation for secondary superblock
> dm zoned: improve logging messages for reclaim
> dm zoned: add a 'reserved' zone flag
> dm zoned: convert to xarray
> dm zoned: allocate temporary superblock for tertiary devices
> dm zoned: add device pointer to struct dm_zone
> dm zoned: add metadata pointer to struct dmz_dev
> dm zoned: per-device reclaim
> dm zoned: move random and sequential zones into struct dmz_dev
> dm zoned: support arbitrary number of devices
> dm zoned: allocate zone by device index
> dm zoned: select reclaim zone based on device index
> dm zoned: prefer full zones for reclaim
> dm zoned: check superblock location
>
> Heinz Mauelshagen (2):
> dm: add emulated block size target
> dm ebs: pass discards down to underlying device
>
> Khazhismel Kumykov (1):
> dm mpath: add Historical Service Time Path Selector
>
> Martin Wilck (1):
> dm mpath: switch paths in dm_blk_ioctl() code path
>
> Mike Snitzer (5):
> dm: use DMDEBUG macros now that they use pr_debug variants
> dm mpath: simplify __must_push_back
> dm mpath: restrict queue_if_no_path state machine
> dm mpath: enhance queue_if_no_path debugging
> dm mpath: add DM device name to Failing/Reinstating path log messages
>
> Mikulas Patocka (8):
> dm bufio: implement discard
> dm writecache: remove superfluous test in persistent_memory_claim
> dm writecache: improve performance on DDR persistent memory (Optane)
> dm bufio: delete unused and inefficient dm_bufio_discard_buffers
> dm integrity: add status line documentation
> dm bufio: clean up rbtree block ordering
> dm bufio: introduce forget_buffer_locked
> dm ebs: use dm_bufio_forget_buffers
>
> Nathan Chancellor (1):
> dm zoned: Avoid 64-bit division error in dmz_fixup_devices
>
> YueHaibing (1):
> dm integrity: remove set but not used variables
>
> Zhiqiang Liu (1):
> dm persistent data: switch exit_ro_spine to return void
>
> Documentation/admin-guide/device-mapper/dm-ebs.rst | 51 +
> .../admin-guide/device-mapper/dm-integrity.rst | 8 +
> .../admin-guide/device-mapper/dm-zoned.rst | 62 +-
> drivers/md/Kconfig | 20 +
> drivers/md/Makefile | 3 +
> drivers/md/dm-bufio.c | 109 +-
> drivers/md/dm-crypt.c | 80 +-
> drivers/md/dm-ebs-target.c | 471 +++++++++
> drivers/md/dm-historical-service-time.c | 561 +++++++++++
> drivers/md/dm-integrity.c | 6 +-
> drivers/md/dm-log-writes.c | 2 +-
> drivers/md/dm-mpath.c | 123 ++-
> drivers/md/dm-path-selector.h | 2 +-
> drivers/md/dm-queue-length.c | 2 +-
> drivers/md/dm-raid.c | 2 +-
> drivers/md/dm-raid1.c | 2 +-
> drivers/md/dm-service-time.c | 2 +-
> drivers/md/dm-stats.c | 2 +-
> drivers/md/dm-stripe.c | 2 +-
> drivers/md/dm-switch.c | 2 +-
> drivers/md/dm-writecache.c | 42 +-
> drivers/md/dm-zoned-metadata.c | 1046 +++++++++++++++-----
> drivers/md/dm-zoned-reclaim.c | 210 ++--
> drivers/md/dm-zoned-target.c | 463 ++++++---
> drivers/md/dm-zoned.h | 113 ++-
> drivers/md/dm.c | 11 +-
> drivers/md/persistent-data/dm-btree-internal.h | 4 +-
> drivers/md/persistent-data/dm-btree-spine.c | 6 +-
> include/linux/device-mapper.h | 9 +-
> include/linux/dm-bufio.h | 12 +
> 30 files changed, 2779 insertions(+), 649 deletions(-)
> create mode 100644 Documentation/admin-guide/device-mapper/dm-ebs.rst
> create mode 100644 drivers/md/dm-ebs-target.c
> create mode 100644 drivers/md/dm-historical-service-time.c
prev parent reply other threads:[~2020-06-10 12:44 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-05 14:51 [git pull] device mapper changes for 5.8 Mike Snitzer
2020-06-05 18:17 ` Mikulas Patocka
2020-06-05 19:16 ` [git pull v2] " Mike Snitzer
2020-06-05 23:15 ` pr-tracker-bot
2020-06-09 13:59 ` [git pull v3] " Mike Snitzer
2020-06-10 12:44 ` Mike Snitzer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200610124444.GA356@redhat.com \
--to=snitzer@redhat.com \
--cc=agk@redhat.com \
--cc=dm-devel@redhat.com \
--cc=dmitry_baryshkov@mentor.com \
--cc=ebiggers@google.com \
--cc=gustavoars@kernel.org \
--cc=hare@suse.de \
--cc=heinzm@redhat.com \
--cc=khazhy@google.com \
--cc=krisman@collabora.com \
--cc=linux-block@vger.kernel.org \
--cc=liuzhiqiang26@huawei.com \
--cc=mpatocka@redhat.com \
--cc=mwilck@suse.com \
--cc=natechancellor@gmail.com \
--cc=torvalds@linux-foundation.org \
--cc=yuehaibing@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.