[PATCH v2 4/5] PCI: endpoint: Add NVMe endpoint function driver
Christoph Hellwig
hch at lst.de
Mon Oct 14 04:38:09 PDT 2024
On Mon, Oct 14, 2024 at 07:41:18PM +0900, Damien Le Moal wrote:
> | | PCIe NVMe endpoint driver | |
> | | (Handles BAR registers, | |
> | | doorbells, IRQs, SQs, CQs | |
> | | and DMA transfers) | |
> | +---------------------------+ |
> | | |
> | +---------------------------+ |
> | | NVMe fabrics host | |
> | +---------------------------+ |
That whole fabrics host here is broken. The PCI frontend needs to
talk directly to the target code instead of doing a completely
pointless roundtrip through the block layer.
> Unless I am mistaken, if I use a PCI transport as the base for the endpoint
> driver, I would be able to connect only to a PCIe nvme device as the backend, no
> ?
No. Any fabrisc transport (or frontend) can you any of the the
backends (file / bdev and passthrough).
More information about the Linux-nvme
mailing list