From: David Epping <david.epping@missinglinkelectronics.com>
To: Keith Busch <kbusch@kernel.org>
Cc: linux-nvme@lists.infradead.org, Jens Axboe <axboe@kernel.dk>,
Christoph Hellwig <hch@lst.de>, Sagi Grimberg <sagi@grimberg.me>,
Leon Romanovsky <leon@kernel.org>,
Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
Subject: Re: [PATCH RFC] nvme-ioctl: propagate PRP1 from ioctl to admin cmd
Date: Mon, 22 Jun 2026 16:56:22 +0200 [thread overview]
Message-ID: <ajlNFpz5977PzLvb@ubuntu-server> (raw)
In-Reply-To: <ajlIPlEv_zBfTMVG@kbusch-mbp>
On Mon, Jun 22, 2026 at 08:35:42AM -0600, Keith Busch wrote:
> On Mon, Jun 22, 2026 at 04:15:42PM +0200, David Epping wrote:
> > @@ -306,6 +306,7 @@ static int nvme_user_cmd(struct nvme_ctrl *ctrl, struct nvme_ns *ns,
> > c.common.nsid = cpu_to_le32(cmd.nsid);
> > c.common.cdw2[0] = cpu_to_le32(cmd.cdw2);
> > c.common.cdw2[1] = cpu_to_le32(cmd.cdw3);
> > + c.common.dptr.prp1 = cpu_to_le64(cmd.addr);
>
> This is not correct: the user space virtual address isn't the device
> DMA'able address. The driver already handles mapping the user address to
> kernel space, then to dma, then sets the PRP accordingly.
To clarify, the ioctl struct addr field is not filled with a memory buffer
address by the userspace, but a PCIe mapped BAR address plus offset.
It is obtained by the userspace application operating the FPGA vfio device
by reading from PCI config space via VFIO_PCI_CONFIG_REGION_INDEX.
So it is the address Linux assigned to that BAR (plus offset).
next prev parent reply other threads:[~2026-06-22 14:56 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-22 14:15 [PATCH RFC] nvme-ioctl: propagate PRP1 from ioctl to admin cmd David Epping
2026-06-22 14:35 ` Keith Busch
2026-06-22 14:56 ` David Epping [this message]
2026-06-22 15:15 ` 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=ajlNFpz5977PzLvb@ubuntu-server \
--to=david.epping@missinglinkelectronics.com \
--cc=axboe@kernel.dk \
--cc=hch@lst.de \
--cc=joachim.foerster@missinglinkelectronics.com \
--cc=kbusch@kernel.org \
--cc=leon@kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=sagi@grimberg.me \
/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.