public inbox for [email protected]
 help / color / mirror / Atom feed
From: Christoph Hellwig <[email protected]>
To: Kanchan Joshi <[email protected]>
Cc: "Christoph Hellwig" <[email protected]>,
	"Kanchan Joshi" <[email protected]>,
	"Jens Axboe" <[email protected]>, "Keith Busch" <[email protected]>,
	"Pavel Begunkov" <[email protected]>,
	[email protected], [email protected],
	[email protected], [email protected],
	[email protected], "Pankaj Raghav" <[email protected]>,
	"Javier González" <[email protected]>,
	"Luis Chamberlain" <[email protected]>,
	"Adam Manzanares" <[email protected]>,
	"Anuj Gupta" <[email protected]>
Subject: Re: [PATCH 17/17] nvme: enable non-inline passthru commands
Date: Fri, 11 Mar 2022 07:27:10 +0100	[thread overview]
Message-ID: <[email protected]> (raw)
In-Reply-To: <CA+1E3rL3Q2noHW-cD20SZyo9EqbzjF54F6TgZoUMMuZGkhkqnw@mail.gmail.com>

On Fri, Mar 11, 2022 at 12:13:24AM +0530, Kanchan Joshi wrote:
> Problem is, the inline facility does not go very well with this
> particular nvme-passthru ioctl (NVME_IOCTL_IO64_CMD).

And it doesn't have to, because there is absolutely no need to reuse
the existing structures!  Quite to the contrary, trying to reuse the
structure and opcode makes things confusing as hell.

> And that's because this ioctl requires additional "__u64 result;" to
> be updated within "struct nvme_passthru_cmd64".
> To update that during completion, we need, at the least, the result
> field to be a pointer "__u64 result_ptr" inside the struct
> nvme_passthru_cmd64.
> Do you see that is possible without adding a new passthru ioctl in nvme?

We don't need a new passthrough ioctl in nvme.  We need to decouple the
uring cmd properly.  And properly in this case means not to add a
result pointer, but to drop the result from the _input_ structure
entirely, and instead optionally support a larger CQ entry that contains
it, just like the first patch does for the SQ.


  parent reply	other threads:[~2022-03-11  6:27 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <[email protected]>
     [not found] ` <CGME20220308152716epcas5p3d38d2372c184259f1a10c969f7e4396f@epcas5p3.samsung.com>
     [not found]   ` <[email protected]>
     [not found]     ` <[email protected]>
2022-03-10 12:25       ` [PATCH 11/17] block: factor out helper for bio allocation from cache Kanchan Joshi
     [not found] ` <CGME20220308152714epcas5p4c5a0d16512fd7054c9a713ee28ede492@epcas5p4.samsung.com>
     [not found]   ` <[email protected]>
     [not found]     ` <[email protected]>
2022-03-10 12:40       ` [PATCH 10/17] block: wire-up support for plugging Kanchan Joshi
     [not found] ` <CGME20220308152729epcas5p17e82d59c68076eb46b5ef658619d65e3@epcas5p1.samsung.com>
     [not found]   ` <[email protected]>
     [not found]     ` <[email protected]>
     [not found]       ` <CA+1E3rLaQstG8LWUyJrbK5Qz+AnNpOnAyoK-7H5foFm67BJeFA@mail.gmail.com>
2022-03-10 14:19         ` [PATCH 17/17] nvme: enable non-inline passthru commands Christoph Hellwig
     [not found]           ` <CA+1E3rL3Q2noHW-cD20SZyo9EqbzjF54F6TgZoUMMuZGkhkqnw@mail.gmail.com>
2022-03-11  6:27             ` Christoph Hellwig [this message]
     [not found] ` <CGME20220308152702epcas5p1eb1880e024ac8b9531c85a82f31a4e78@epcas5p1.samsung.com>
     [not found]   ` <[email protected]>
2022-03-11  7:01     ` [PATCH 05/17] nvme: wire-up support for async-passthru on char-device Christoph Hellwig
2022-03-22 15:18     ` Clay Mayers

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 \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    /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