From: Christoph Hellwig <hch@lst.de>
To: Keith Busch <kbusch@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>, Keith Busch <kbusch@meta.com>,
linux-nvme@lists.infradead.org
Subject: Re: [PATCH] nvme: uring_cmd specific request_queue for SGLs
Date: Tue, 1 Jul 2025 08:16:09 +0200 [thread overview]
Message-ID: <20250701061609.GA17912@lst.de> (raw)
In-Reply-To: <aGKZf5gX7_JPe4-g@kbusch-mbp>
On Mon, Jun 30, 2025 at 08:04:47AM -0600, Keith Busch wrote:
> > My back on the envelope calculations (for 8 byte metadata chunks)
> > suggests otherwise, but I never got around fully benchmarking it.
> > If you do have a representation workload that you care about I'd love to
> > see the numbers.
>
> Metadata isn't actually the important part of this patch.
>
> The workload just receives data from a iouring zero-copy network and
> writes them out to disk using uring_cmd. The incoming data can have
> various offsets, so it often sends an iovec with page gaps.
>
> Currently the kernel provides a bounce buffer when there are page gaps.
> That's obviously undesirable when the hardware is capable of handling
> the original vector directly.
Yes, the bounce buffer is obviously not very efficient when transferring
large amount of data.
> The options to avoid the copies are either:
>
> a. Force the application to split each iovec into a separate command
>
> b. Relax the kernel's limits to match the hardware's capabilities
>
> This patch is trying to do "b".
a, or a variant of that (not using passthrough) would in general be
my preference. Why is that not suitable here?
next prev parent reply other threads:[~2025-07-01 6:41 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-24 21:14 [PATCH] nvme: uring_cmd specific request_queue for SGLs Keith Busch
2025-06-25 6:09 ` Christoph Hellwig
2025-06-25 22:08 ` Keith Busch
2025-06-26 5:14 ` Christoph Hellwig
2025-06-26 15:29 ` Keith Busch
2025-06-27 7:25 ` Christoph Hellwig
2025-06-27 15:34 ` Keith Busch
2025-06-30 6:00 ` Christoph Hellwig
2025-06-30 14:04 ` Keith Busch
2025-07-01 6:16 ` Christoph Hellwig [this message]
2025-07-01 12:15 ` Keith Busch
2025-07-01 14:35 ` Keith Busch
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=20250701061609.GA17912@lst.de \
--to=hch@lst.de \
--cc=kbusch@kernel.org \
--cc=kbusch@meta.com \
--cc=linux-nvme@lists.infradead.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.