All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Snitzer <snitzer@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Guo Zhengkui <guozhengkui@vivo.com>,
	Ming Lei <ming.lei@redhat.com>,
	linux-block@vger.kernel.org, dm-devel@redhat.com,
	Mikulas Patocka <mpatocka@redhat.com>,
	Alasdair G Kergon <agk@redhat.com>,
	Gabriel Krisman Bertazi <krisman@collabora.com>,
	Dan Carpenter <dan.carpenter@oracle.com>
Subject: [dm-devel] [git pull] device mapper changes for 5.19
Date: Thu, 26 May 2022 12:41:14 -0400	[thread overview]
Message-ID: <Yo+tqngHo5JCZTJc@redhat.com> (raw)

Hi Linus,

These changes build on Jens' for-5.19 block tree because of various
block changes that impacted DM and/or prereqs for these DM changes.

The following changes since commit 069adbac2cd85ae00252da6c5576cbf9b9d9ba6e:

  block: improve the error message from bio_check_eod (2022-05-04 18:30:10 -0600)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git tags/for-5.19/dm-changes

for you to fetch changes up to ca522482e3eafd005b8d4e8b1331c911505a58d5:

  dm: pass NULL bdev to bio_alloc_clone (2022-05-11 13:58:52 -0400)

Please pull, thanks.
Mike

----------------------------------------------------------------
- Enable DM core bioset's per-cpu bio cache if QUEUE_FLAG_POLL
  set. This change improves DM's hipri bio polling (REQ_POLLED)
  performance by 7 - 20% depending on the system.

- Update DM core to use jump_labels to further reduce cost of unlikely
  branches for zoned block devices, dm-stats and swap_bios throttling.

- Various DM core changes to reduce bio-based DM overhead and simplify
  IO accounting.

- Fundamental DM core improvements to dm_io reference counting and the
  elimination of using bio_split()+bio_chain() -- instead DM's
  bio-based IO accounting is updated to account that a split occurred.

- Improve DM core's abnormal bio processing to do less work.

- Improve DM core's hipri polling support to use a single list rather
  than an hlist.

- Update DM core to pass NULL bdev to bio_alloc_clone() so that
  initialization that isn't useful for DM can be elided.

- Add cond_resched to DM stats' various loops that loop over all
  entries.

- Fix incorrect error code return from DM integrity's constructor.

- Make DM crypt's printing of the key constant-time.

- Update bio-based DM multipath to provide high-resolution timer to
  the Historical Service Time (HST) path selector.

----------------------------------------------------------------
Dan Carpenter (1):
      dm integrity: fix error code in dm_integrity_ctr()

Gabriel Krisman Bertazi (1):
      dm mpath: provide high-resolution timer to HST for bio-based

Guo Zhengkui (1):
      dm cache metadata: remove unnecessary variable in __dump_mapping

Mike Snitzer (14):
      dm: conditionally enable BIOSET_PERCPU_CACHE for dm_io bioset
      dm: factor out dm_io_set_error and __dm_io_dec_pending
      dm: simplify dm_io access in dm_split_and_process_bio
      dm: simplify dm_start_io_acct
      dm: mark various branches unlikely
      dm: add local variables to clone_endio and __map_bio
      dm: move hot dm_io members to same cacheline as dm_target_io
      dm: introduce dm_{get,put}_live_table_bio called from dm_submit_bio
      dm: conditionally enable branching for less used features
      dm: simplify basic targets
      dm: use bio_sectors in dm_aceept_partial_bio
      dm: simplify bio-based IO accounting further
      dm: improve abnormal bio processing
      dm: pass NULL bdev to bio_alloc_clone

Mikulas Patocka (2):
      dm stats: add cond_resched when looping over entries
      dm crypt: make printing of the key constant-time

Ming Lei (7):
      dm: don't pass bio to __dm_start_io_acct and dm_end_io_acct
      dm: pass dm_io instance to dm_io_acct directly
      dm: switch to bdev based IO accounting interfaces
      dm: improve bio splitting and associated IO accounting
      dm: don't grab target io reference in dm_zone_map_bio
      dm: improve dm_io reference counting
      dm: put all polled dm_io instances into a single list

 drivers/md/dm-cache-metadata.c             |   3 +-
 drivers/md/dm-core.h                       |  38 +-
 drivers/md/dm-crypt.c                      |  14 +-
 drivers/md/dm-delay.c                      |   3 +-
 drivers/md/dm-flakey.c                     |   4 +-
 drivers/md/dm-integrity.c                  |   2 -
 drivers/md/dm-linear.c                     |  11 +-
 drivers/md/dm-mpath.c                      |   8 +-
 drivers/md/dm-path-selector.h              |  15 +
 drivers/md/dm-ps-historical-service-time.c |   1 +
 drivers/md/dm-stats.c                      |  11 +
 drivers/md/dm-table.c                      |  16 +-
 drivers/md/dm-zone.c                       |  10 -
 drivers/md/dm.c                            | 556 +++++++++++++++++------------
 drivers/md/dm.h                            |   4 +-
 15 files changed, 409 insertions(+), 287 deletions(-)

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


WARNING: multiple messages have this Message-ID (diff)
From: Mike Snitzer <snitzer@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: dm-devel@redhat.com, linux-block@vger.kernel.org,
	Alasdair G Kergon <agk@redhat.com>,
	Dan Carpenter <dan.carpenter@oracle.com>,
	Gabriel Krisman Bertazi <krisman@collabora.com>,
	Guo Zhengkui <guozhengkui@vivo.com>,
	Mikulas Patocka <mpatocka@redhat.com>,
	Ming Lei <ming.lei@redhat.com>
Subject: [git pull] device mapper changes for 5.19
Date: Thu, 26 May 2022 12:41:14 -0400	[thread overview]
Message-ID: <Yo+tqngHo5JCZTJc@redhat.com> (raw)

Hi Linus,

These changes build on Jens' for-5.19 block tree because of various
block changes that impacted DM and/or prereqs for these DM changes.

The following changes since commit 069adbac2cd85ae00252da6c5576cbf9b9d9ba6e:

  block: improve the error message from bio_check_eod (2022-05-04 18:30:10 -0600)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git tags/for-5.19/dm-changes

for you to fetch changes up to ca522482e3eafd005b8d4e8b1331c911505a58d5:

  dm: pass NULL bdev to bio_alloc_clone (2022-05-11 13:58:52 -0400)

Please pull, thanks.
Mike

----------------------------------------------------------------
- Enable DM core bioset's per-cpu bio cache if QUEUE_FLAG_POLL
  set. This change improves DM's hipri bio polling (REQ_POLLED)
  performance by 7 - 20% depending on the system.

- Update DM core to use jump_labels to further reduce cost of unlikely
  branches for zoned block devices, dm-stats and swap_bios throttling.

- Various DM core changes to reduce bio-based DM overhead and simplify
  IO accounting.

- Fundamental DM core improvements to dm_io reference counting and the
  elimination of using bio_split()+bio_chain() -- instead DM's
  bio-based IO accounting is updated to account that a split occurred.

- Improve DM core's abnormal bio processing to do less work.

- Improve DM core's hipri polling support to use a single list rather
  than an hlist.

- Update DM core to pass NULL bdev to bio_alloc_clone() so that
  initialization that isn't useful for DM can be elided.

- Add cond_resched to DM stats' various loops that loop over all
  entries.

- Fix incorrect error code return from DM integrity's constructor.

- Make DM crypt's printing of the key constant-time.

- Update bio-based DM multipath to provide high-resolution timer to
  the Historical Service Time (HST) path selector.

----------------------------------------------------------------
Dan Carpenter (1):
      dm integrity: fix error code in dm_integrity_ctr()

Gabriel Krisman Bertazi (1):
      dm mpath: provide high-resolution timer to HST for bio-based

Guo Zhengkui (1):
      dm cache metadata: remove unnecessary variable in __dump_mapping

Mike Snitzer (14):
      dm: conditionally enable BIOSET_PERCPU_CACHE for dm_io bioset
      dm: factor out dm_io_set_error and __dm_io_dec_pending
      dm: simplify dm_io access in dm_split_and_process_bio
      dm: simplify dm_start_io_acct
      dm: mark various branches unlikely
      dm: add local variables to clone_endio and __map_bio
      dm: move hot dm_io members to same cacheline as dm_target_io
      dm: introduce dm_{get,put}_live_table_bio called from dm_submit_bio
      dm: conditionally enable branching for less used features
      dm: simplify basic targets
      dm: use bio_sectors in dm_aceept_partial_bio
      dm: simplify bio-based IO accounting further
      dm: improve abnormal bio processing
      dm: pass NULL bdev to bio_alloc_clone

Mikulas Patocka (2):
      dm stats: add cond_resched when looping over entries
      dm crypt: make printing of the key constant-time

Ming Lei (7):
      dm: don't pass bio to __dm_start_io_acct and dm_end_io_acct
      dm: pass dm_io instance to dm_io_acct directly
      dm: switch to bdev based IO accounting interfaces
      dm: improve bio splitting and associated IO accounting
      dm: don't grab target io reference in dm_zone_map_bio
      dm: improve dm_io reference counting
      dm: put all polled dm_io instances into a single list

 drivers/md/dm-cache-metadata.c             |   3 +-
 drivers/md/dm-core.h                       |  38 +-
 drivers/md/dm-crypt.c                      |  14 +-
 drivers/md/dm-delay.c                      |   3 +-
 drivers/md/dm-flakey.c                     |   4 +-
 drivers/md/dm-integrity.c                  |   2 -
 drivers/md/dm-linear.c                     |  11 +-
 drivers/md/dm-mpath.c                      |   8 +-
 drivers/md/dm-path-selector.h              |  15 +
 drivers/md/dm-ps-historical-service-time.c |   1 +
 drivers/md/dm-stats.c                      |  11 +
 drivers/md/dm-table.c                      |  16 +-
 drivers/md/dm-zone.c                       |  10 -
 drivers/md/dm.c                            | 556 +++++++++++++++++------------
 drivers/md/dm.h                            |   4 +-
 15 files changed, 409 insertions(+), 287 deletions(-)

             reply	other threads:[~2022-05-26 16:41 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-26 16:41 Mike Snitzer [this message]
2022-05-26 16:41 ` [git pull] device mapper changes for 5.19 Mike Snitzer
2022-05-27  4:16 ` [dm-devel] " pr-tracker-bot
2022-05-27  4:16   ` 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=Yo+tqngHo5JCZTJc@redhat.com \
    --to=snitzer@kernel.org \
    --cc=agk@redhat.com \
    --cc=dan.carpenter@oracle.com \
    --cc=dm-devel@redhat.com \
    --cc=guozhengkui@vivo.com \
    --cc=krisman@collabora.com \
    --cc=linux-block@vger.kernel.org \
    --cc=ming.lei@redhat.com \
    --cc=mpatocka@redhat.com \
    --cc=torvalds@linux-foundation.org \
    /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.