All of lore.kernel.org
 help / color / mirror / Atom feed
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>,
	Aashish Sharma <shraash@google.com>,
	Barry Song <21cnbao@gmail.com>, Christoph Hellwig <hch@lst.de>,
	Colin Ian King <colin.i.king@gmail.com>,
	Jordy Zomer <jordy@jordyzomer.github.io>,
	Kirill Tkhai <ktkhai@virtuozzo.com>,
	Ming Lei <ming.lei@redhat.com>, Thore Sommer <public@thson.de>,
	Tom Rix <trix@redhat.com>, Wang Qing <wangqing@vivo.com>,
	Zhiqiang Liu <liuzhiqiang26@huawei.com>
Subject: [git pull] device mapper changes for 5.18
Date: Wed, 23 Mar 2022 16:38:49 -0400	[thread overview]
Message-ID: <YjuFWbp0vdh/7c5A@redhat.com> (raw)

Hi Linus,

These changes build on Jens' for-5.18 block tree because of various
changes that impacted DM and DM's need for bio_start_io_acct_time().

The following changes since commit bcd2be763252f3a4d5fc4d6008d4d96c601ee74b:

  block/bfq_wf2q: correct weight to ioprio (2022-02-16 20:09:14 -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.18/dm-changes

for you to fetch changes up to 4d7bca13dd9a5033174b0735056c5658cb893e76:

  dm: consolidate spinlocks in dm_io struct (2022-03-21 14:15:36 -0400)

Please pull, thanks.
Mike

----------------------------------------------------------------
- Significant refactoring and fixing of how DM core does bio-based IO
  accounting with focus on fixing wildly inaccurate IO stats for
  dm-crypt (and other DM targets that defer bio submission in their
  own workqueues). End result is proper IO accounting, made possible
  by targets being updated to use the new dm_submit_bio_remap()
  interface.

- Add hipri bio polling support (REQ_POLLED) to bio-based DM.

- Reduce dm_io and dm_target_io structs so that a single dm_io (which
  contains dm_target_io and first clone bio) weighs in at 256 bytes.
  For reference the bio struct is 128 bytes.

- Various other small cleanups, fixes or improvements in DM core and
  targets.

- Update MAINTAINERS with my kernel.org email address to allow
  distinction between my "upstream" and "Red" Hats.

----------------------------------------------------------------
Aashish Sharma (1):
      dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS

Barry Song (1):
      dm io: remove stale comment block for dm_io()

Christoph Hellwig (2):
      dm-zoned: remove the ->name field in struct dmz_dev
      dm: stop using bdevname

Colin Ian King (1):
      dm cache policy smq: make static read-only array table const

Jordy Zomer (1):
      dm ioctl: prevent potential spectre v1 gadget

Kirill Tkhai (1):
      dm: fix use-after-free in dm_cleanup_zoned_dev()

Mike Snitzer (33):
      dm: interlock pending dm_io and dm_wait_for_bios_completion
      dm: fix double accounting of flush with data
      dm stats: fix too short end duration_ns when using precise_timestamps
      dm: eliminate copying of dm_io fields in dm_io_dec_pending
      dm: reorder members in mapped_device struct
      dm: rename split functions
      dm: fold __clone_and_map_data_bio into __split_and_process_bio
      dm: refactor dm_split_and_process_bio a bit
      dm: reduce code duplication in __map_bio
      dm: remove impossible BUG_ON in __send_empty_flush
      dm: remove unused mapped_device argument from free_tio
      dm: remove legacy code only needed before submit_bio recursion
      dm: record old_sector in dm_target_io before calling map function
      dm: move duplicate code from callers of alloc_tio into alloc_tio
      dm: reduce dm_io and dm_target_io struct sizes
      dm: flag clones created by __send_duplicate_bios
      dm: add dm_submit_bio_remap interface
      dm crypt: use dm_submit_bio_remap
      dm delay: use dm_submit_bio_remap
      dm: requeue IO if mapping table not yet available
      dm: remove unnecessary local variables in __bind
      dm mpath: use DMINFO instead of printk with KERN_INFO
      dm: add WARN_ON_ONCE to dm_submit_bio_remap
      dm thin: use dm_submit_bio_remap
      dm: simplify dm_sumbit_bio_remap interface
      dm cache: use dm_submit_bio_remap
      dm: factor out dm_io_complete
      dm: return void from __send_empty_flush
      dm: update email address in MAINTAINERS
      dm: switch dm_io booleans over to proper flags
      dm: switch dm_target_io booleans over to proper flags
      dm: reduce size of dm_io and dm_target_io structs
      dm: consolidate spinlocks in dm_io struct

Ming Lei (2):
      block: add ->poll_bio to block_device_operations
      dm: support bio polling

Thore Sommer (1):
      dm ima: fix wrong length calculation for no_data string

Tom Rix (1):
      dm: cleanup double word in comment

Wang Qing (1):
      dm thin: use time_is_before_jiffies instead of open coding it

Zhiqiang Liu (1):
      dm thin metadata: remove unused dm_thin_remove_block and __remove

 MAINTAINERS                      |   2 +-
 block/blk-core.c                 |  14 +-
 block/genhd.c                    |   4 +
 drivers/md/dm-cache-policy-smq.c |   4 +-
 drivers/md/dm-cache-target.c     |  17 +-
 drivers/md/dm-clone-target.c     |  10 +-
 drivers/md/dm-core.h             |  99 ++++--
 drivers/md/dm-crypt.c            |  15 +-
 drivers/md/dm-delay.c            |   5 +-
 drivers/md/dm-ima.c              |   6 +-
 drivers/md/dm-io.c               |   8 -
 drivers/md/dm-ioctl.c            |   2 +
 drivers/md/dm-mpath.c            |   5 +-
 drivers/md/dm-rq.c               |   7 +-
 drivers/md/dm-stats.c            |  34 +-
 drivers/md/dm-stats.h            |  11 +-
 drivers/md/dm-table.c            |  57 +++-
 drivers/md/dm-thin-metadata.c    |  28 --
 drivers/md/dm-thin-metadata.h    |   1 -
 drivers/md/dm-thin.c             |  15 +-
 drivers/md/dm-zoned-metadata.c   |   4 +-
 drivers/md/dm-zoned-target.c     |   1 -
 drivers/md/dm-zoned.h            |   9 +-
 drivers/md/dm.c                  | 673 ++++++++++++++++++++++++++-------------
 include/linux/blkdev.h           |   2 +
 include/linux/device-mapper.h    |   9 +-
 include/uapi/linux/dm-ioctl.h    |   4 +-
 27 files changed, 685 insertions(+), 361 deletions(-)


WARNING: multiple messages have this Message-ID (diff)
From: Mike Snitzer <snitzer@redhat.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Aashish Sharma <shraash@google.com>,
	Wang Qing <wangqing@vivo.com>,
	Zhiqiang Liu <liuzhiqiang26@huawei.com>,
	Jordy Zomer <jordy@jordyzomer.github.io>,
	Tom Rix <trix@redhat.com>, Barry Song <21cnbao@gmail.com>,
	Ming Lei <ming.lei@redhat.com>,
	linux-block@vger.kernel.org, dm-devel@redhat.com,
	Kirill Tkhai <ktkhai@virtuozzo.com>,
	Colin Ian King <colin.i.king@gmail.com>,
	Christoph Hellwig <hch@lst.de>,
	Alasdair G Kergon <agk@redhat.com>,
	Thore Sommer <public@thson.de>
Subject: [dm-devel] [git pull] device mapper changes for 5.18
Date: Wed, 23 Mar 2022 16:38:49 -0400	[thread overview]
Message-ID: <YjuFWbp0vdh/7c5A@redhat.com> (raw)

Hi Linus,

These changes build on Jens' for-5.18 block tree because of various
changes that impacted DM and DM's need for bio_start_io_acct_time().

The following changes since commit bcd2be763252f3a4d5fc4d6008d4d96c601ee74b:

  block/bfq_wf2q: correct weight to ioprio (2022-02-16 20:09:14 -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.18/dm-changes

for you to fetch changes up to 4d7bca13dd9a5033174b0735056c5658cb893e76:

  dm: consolidate spinlocks in dm_io struct (2022-03-21 14:15:36 -0400)

Please pull, thanks.
Mike

----------------------------------------------------------------
- Significant refactoring and fixing of how DM core does bio-based IO
  accounting with focus on fixing wildly inaccurate IO stats for
  dm-crypt (and other DM targets that defer bio submission in their
  own workqueues). End result is proper IO accounting, made possible
  by targets being updated to use the new dm_submit_bio_remap()
  interface.

- Add hipri bio polling support (REQ_POLLED) to bio-based DM.

- Reduce dm_io and dm_target_io structs so that a single dm_io (which
  contains dm_target_io and first clone bio) weighs in at 256 bytes.
  For reference the bio struct is 128 bytes.

- Various other small cleanups, fixes or improvements in DM core and
  targets.

- Update MAINTAINERS with my kernel.org email address to allow
  distinction between my "upstream" and "Red" Hats.

----------------------------------------------------------------
Aashish Sharma (1):
      dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS

Barry Song (1):
      dm io: remove stale comment block for dm_io()

Christoph Hellwig (2):
      dm-zoned: remove the ->name field in struct dmz_dev
      dm: stop using bdevname

Colin Ian King (1):
      dm cache policy smq: make static read-only array table const

Jordy Zomer (1):
      dm ioctl: prevent potential spectre v1 gadget

Kirill Tkhai (1):
      dm: fix use-after-free in dm_cleanup_zoned_dev()

Mike Snitzer (33):
      dm: interlock pending dm_io and dm_wait_for_bios_completion
      dm: fix double accounting of flush with data
      dm stats: fix too short end duration_ns when using precise_timestamps
      dm: eliminate copying of dm_io fields in dm_io_dec_pending
      dm: reorder members in mapped_device struct
      dm: rename split functions
      dm: fold __clone_and_map_data_bio into __split_and_process_bio
      dm: refactor dm_split_and_process_bio a bit
      dm: reduce code duplication in __map_bio
      dm: remove impossible BUG_ON in __send_empty_flush
      dm: remove unused mapped_device argument from free_tio
      dm: remove legacy code only needed before submit_bio recursion
      dm: record old_sector in dm_target_io before calling map function
      dm: move duplicate code from callers of alloc_tio into alloc_tio
      dm: reduce dm_io and dm_target_io struct sizes
      dm: flag clones created by __send_duplicate_bios
      dm: add dm_submit_bio_remap interface
      dm crypt: use dm_submit_bio_remap
      dm delay: use dm_submit_bio_remap
      dm: requeue IO if mapping table not yet available
      dm: remove unnecessary local variables in __bind
      dm mpath: use DMINFO instead of printk with KERN_INFO
      dm: add WARN_ON_ONCE to dm_submit_bio_remap
      dm thin: use dm_submit_bio_remap
      dm: simplify dm_sumbit_bio_remap interface
      dm cache: use dm_submit_bio_remap
      dm: factor out dm_io_complete
      dm: return void from __send_empty_flush
      dm: update email address in MAINTAINERS
      dm: switch dm_io booleans over to proper flags
      dm: switch dm_target_io booleans over to proper flags
      dm: reduce size of dm_io and dm_target_io structs
      dm: consolidate spinlocks in dm_io struct

Ming Lei (2):
      block: add ->poll_bio to block_device_operations
      dm: support bio polling

Thore Sommer (1):
      dm ima: fix wrong length calculation for no_data string

Tom Rix (1):
      dm: cleanup double word in comment

Wang Qing (1):
      dm thin: use time_is_before_jiffies instead of open coding it

Zhiqiang Liu (1):
      dm thin metadata: remove unused dm_thin_remove_block and __remove

 MAINTAINERS                      |   2 +-
 block/blk-core.c                 |  14 +-
 block/genhd.c                    |   4 +
 drivers/md/dm-cache-policy-smq.c |   4 +-
 drivers/md/dm-cache-target.c     |  17 +-
 drivers/md/dm-clone-target.c     |  10 +-
 drivers/md/dm-core.h             |  99 ++++--
 drivers/md/dm-crypt.c            |  15 +-
 drivers/md/dm-delay.c            |   5 +-
 drivers/md/dm-ima.c              |   6 +-
 drivers/md/dm-io.c               |   8 -
 drivers/md/dm-ioctl.c            |   2 +
 drivers/md/dm-mpath.c            |   5 +-
 drivers/md/dm-rq.c               |   7 +-
 drivers/md/dm-stats.c            |  34 +-
 drivers/md/dm-stats.h            |  11 +-
 drivers/md/dm-table.c            |  57 +++-
 drivers/md/dm-thin-metadata.c    |  28 --
 drivers/md/dm-thin-metadata.h    |   1 -
 drivers/md/dm-thin.c             |  15 +-
 drivers/md/dm-zoned-metadata.c   |   4 +-
 drivers/md/dm-zoned-target.c     |   1 -
 drivers/md/dm-zoned.h            |   9 +-
 drivers/md/dm.c                  | 673 ++++++++++++++++++++++++++-------------
 include/linux/blkdev.h           |   2 +
 include/linux/device-mapper.h    |   9 +-
 include/uapi/linux/dm-ioctl.h    |   4 +-
 27 files changed, 685 insertions(+), 361 deletions(-)

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


             reply	other threads:[~2022-03-23 20:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-23 20:38 Mike Snitzer [this message]
2022-03-23 20:38 ` [dm-devel] [git pull] device mapper changes for 5.18 Mike Snitzer
2022-03-25  2:47 ` pr-tracker-bot
2022-03-25  2:47   ` pr-tracker-bot

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=YjuFWbp0vdh/7c5A@redhat.com \
    --to=snitzer@redhat.com \
    --cc=21cnbao@gmail.com \
    --cc=agk@redhat.com \
    --cc=colin.i.king@gmail.com \
    --cc=dm-devel@redhat.com \
    --cc=hch@lst.de \
    --cc=jordy@jordyzomer.github.io \
    --cc=ktkhai@virtuozzo.com \
    --cc=linux-block@vger.kernel.org \
    --cc=liuzhiqiang26@huawei.com \
    --cc=ming.lei@redhat.com \
    --cc=public@thson.de \
    --cc=shraash@google.com \
    --cc=torvalds@linux-foundation.org \
    --cc=trix@redhat.com \
    --cc=wangqing@vivo.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.