Linux-NVME Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: keith.busch@intel.com (Keith Busch)
Subject: [PATCH 5/5] block: support large requests in blk_rq_map_user_iov
Date: Wed, 2 Mar 2016 19:34:22 +0000	[thread overview]
Message-ID: <20160302193422.GE27636@localhost.localdomain> (raw)
In-Reply-To: <1456938434-20387-6-git-send-email-hch@lst.de>

On Wed, Mar 02, 2016@06:07:14PM +0100, Christoph Hellwig wrote:
> This patch adds support for larger requests in blk_rq_map_user_iov by
> allowing it to build multiple bios for a request.  This functionality
> used to exist for the non-vectored blk_rq_map_user in the past, and
> this patch reuses the existing functionality for it on the unmap side,
> which stuck around.  Thanks to the iov_iter API supporting multiple
> bios is fairly trivial, as we can just iterate the iov until we've
> consumed the whole iov_iter.
> 
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> Reported-by: Jeff Lien <Jeff.Lien at hgst.com>
> Tested-by: Jeff Lien <Jeff.Lien at hgst.com>

This looks good too, though I think patch 2/5 in this series on its
own should have fixed the transfer issues for NVMe. AFAICT, the only
reason the iterator couldn't be fully copied into a single bio is if
blk_add_pc_page already hit a queue limit, and blk_rq_append_bio would
fail for the same reason.

Reviewed-by: Keith Busch <keith.busch at intel.com>

  reply	other threads:[~2016-03-02 19:34 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-02 17:07 [for 4.5] fix regression for large NVMe user command Christoph Hellwig
2016-03-02 17:07 ` [PATCH 1/5] nvme: also set BLK_MQ_F_SHOULD_MERGE for the admin queue Christoph Hellwig
2016-03-02 17:35   ` Sagi Grimberg
2016-03-02 18:15     ` Keith Busch
2016-03-02 21:17     ` Christoph Hellwig
2016-03-02 23:55       ` Ming Lei
     [not found]         ` <20160303084609.GA14051@lst.de>
2016-03-03 11:24           ` blk-mq merge flags Ming Lei
2016-03-03 11:59             ` Christoph Hellwig
2016-03-15 16:08           ` Christoph Hellwig
2016-03-15 22:13             ` Jens Axboe
2016-03-02 20:01   ` [PATCH 1/5] nvme: also set BLK_MQ_F_SHOULD_MERGE for the admin queue Jens Axboe
2016-03-02 17:07 ` [PATCH 2/5] nvme: set queue limits " Christoph Hellwig
2016-03-02 19:10   ` Keith Busch
2016-03-02 17:07 ` [PATCH 3/5] nvme: fix max_segments integer truncation Christoph Hellwig
2016-03-02 18:27   ` Keith Busch
2016-03-02 17:07 ` [PATCH 4/5] block: fix blk_rq_get_max_sectors for driver private requests Christoph Hellwig
2016-03-02 19:17   ` Keith Busch
2016-03-02 21:18     ` Christoph Hellwig
2016-03-02 22:16       ` Jens Axboe
2016-03-02 17:07 ` [PATCH 5/5] block: support large requests in blk_rq_map_user_iov Christoph Hellwig
2016-03-02 19:34   ` Keith Busch [this message]
2016-03-02 21:20     ` Christoph Hellwig

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=20160302193422.GE27636@localhost.localdomain \
    --to=keith.busch@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox