public inbox for [email protected]
 help / color / mirror / Atom feed
* [GIT PULL] Passthrough updates for 6.1-rc1
@ 2022-10-03 19:40 Jens Axboe
  2022-10-04 22:10 ` Jens Axboe
  2022-10-07 17:00 ` pr-tracker-bot
  0 siblings, 2 replies; 3+ messages in thread
From: Jens Axboe @ 2022-10-03 19:40 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: [email protected], io-uring

Hi Linus,

On top of the block and io_uring branches, here are a set of updates for
the passthrough support that was merged in the 6.0 kernel. With these
changes, passthrough NVMe support over io_uring now performs at the same
level as block device O_DIRECT, and in many cases 6-8% better. This pull
request contains:

- Add support for fixed buffers for passthrough (Anuj, Kanchan)

- Enable batched allocations and freeing on passthrough, similarly to
  what we support on the normal storage path (me)

Please pull!


The following changes since commit 30514bd2dd4e86a3ecfd6a93a3eadf7b9ea164a0:

  sbitmap: fix lockup while swapping (2022-09-29 17:58:17 -0600)

are available in the Git repository at:

  git://git.kernel.dk/linux.git tags/for-6.1/passthrough-2022-10-03

for you to fetch changes up to 23fd22e55b767be9c31fda57205afb2023cd6aad:

  nvme: wire up fixed buffer support for nvme passthrough (2022-09-30 07:51:13 -0600)

----------------------------------------------------------------
for-6.1/passthrough-2022-10-03

----------------------------------------------------------------
Anuj Gupta (6):
      io_uring: add io_uring_cmd_import_fixed
      io_uring: introduce fixed buffer support for io_uring_cmd
      block: add blk_rq_map_user_io
      scsi: Use blk_rq_map_user_io helper
      nvme: Use blk_rq_map_user_io helper
      block: rename bio_map_put to blk_mq_map_bio_put

Jens Axboe (8):
      Merge branch 'for-6.1/block' into for-6.1/passthrough
      Merge branch 'for-6.1/io_uring' into for-6.1/passthrough
      block: kill deprecated BUG_ON() in the flush handling
      block: enable batched allocation for blk_mq_alloc_request()
      block: change request end_io handler to pass back a return value
      block: allow end_io based requests in the completion batch handling
      nvme: split out metadata vs non metadata end_io uring_cmd completions
      nvme: enable batched completions of passthrough IO

Kanchan Joshi (6):
      nvme: refactor nvme_add_user_metadata
      nvme: refactor nvme_alloc_request
      block: factor out blk_rq_map_bio_alloc helper
      block: extend functionality to map bvec iterator
      nvme: pass ubuffer as an integer
      nvme: wire up fixed buffer support for nvme passthrough

 block/blk-flush.c                  |  11 +-
 block/blk-map.c                    | 150 ++++++++++++++++---
 block/blk-mq.c                     | 107 ++++++++++++--
 drivers/md/dm-rq.c                 |   4 +-
 drivers/nvme/host/core.c           |   6 +-
 drivers/nvme/host/ioctl.c          | 227 +++++++++++++++++++----------
 drivers/nvme/host/pci.c            |  12 +-
 drivers/nvme/target/passthru.c     |   5 +-
 drivers/scsi/scsi_error.c          |   4 +-
 drivers/scsi/scsi_ioctl.c          |  22 +--
 drivers/scsi/sg.c                  |  31 +---
 drivers/scsi/st.c                  |   4 +-
 drivers/target/target_core_pscsi.c |   6 +-
 drivers/ufs/core/ufshpb.c          |   8 +-
 include/linux/blk-mq.h             |  12 +-
 include/linux/io_uring.h           |  10 +-
 include/uapi/linux/io_uring.h      |   9 ++
 io_uring/uring_cmd.c               |  29 +++-
 18 files changed, 476 insertions(+), 181 deletions(-)

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL] Passthrough updates for 6.1-rc1
  2022-10-03 19:40 [GIT PULL] Passthrough updates for 6.1-rc1 Jens Axboe
@ 2022-10-04 22:10 ` Jens Axboe
  2022-10-07 17:00 ` pr-tracker-bot
  1 sibling, 0 replies; 3+ messages in thread
From: Jens Axboe @ 2022-10-04 22:10 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: [email protected], io-uring

On 10/3/22 1:40 PM, Jens Axboe wrote:
> Hi Linus,
> 
> On top of the block and io_uring branches, here are a set of updates for
> the passthrough support that was merged in the 6.0 kernel. With these
> changes, passthrough NVMe support over io_uring now performs at the same
> level as block device O_DIRECT, and in many cases 6-8% better. This pull
> request contains:
> 
> - Add support for fixed buffers for passthrough (Anuj, Kanchan)
> 
> - Enable batched allocations and freeing on passthrough, similarly to
>   what we support on the normal storage path (me)
> 
> Please pull!

Geert noticed that there was an issue if io_uring wasn't configured,
there's been a patch added for that. I'll send a v2 of this pull request.

-- 
Jens Axboe



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [GIT PULL] Passthrough updates for 6.1-rc1
  2022-10-03 19:40 [GIT PULL] Passthrough updates for 6.1-rc1 Jens Axboe
  2022-10-04 22:10 ` Jens Axboe
@ 2022-10-07 17:00 ` pr-tracker-bot
  1 sibling, 0 replies; 3+ messages in thread
From: pr-tracker-bot @ 2022-10-07 17:00 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Linus Torvalds, [email protected], io-uring

The pull request you sent on Mon, 3 Oct 2022 13:40:17 -0600:

> git://git.kernel.dk/linux.git tags/for-6.1/passthrough-2022-10-03

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/0e0abad2a71bcd7ba0f30e7975f5b4199ade4e60

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-10-07 17:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-03 19:40 [GIT PULL] Passthrough updates for 6.1-rc1 Jens Axboe
2022-10-04 22:10 ` Jens Axboe
2022-10-07 17:00 ` pr-tracker-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox