Thread (14 messages) 14 messages, 5 authors, 2015-09-17
STALE3901d
Revisions (12)
  1. rfc [diff vs current]
  2. rfc current
  3. rfc [diff vs current]
  4. rfc [diff vs current]
  5. rfc [diff vs current]
  6. rfc [diff vs current]
  7. rfc [diff vs current]
  8. rfc [diff vs current]
  9. rfc [diff vs current]
  10. rfc [diff vs current]
  11. rfc [diff vs current]
  12. rfc [diff vs current]

Re: [RFC PATCH 0/2] virtio nvme

From: Ming Lin <mlin@kernel.org>
Date: 2015-09-10 17:02:01
Also in: linux-nvme

On Thu, 2015-09-10 at 14:02 +0000, Keith Busch wrote:
On Wed, 9 Sep 2015, Ming Lin wrote:
quoted
The goal is to have a full NVMe stack from VM guest(virtio-nvme)
to host(vhost_nvme) to LIO NVMe-over-fabrics target.

Now there are lots of duplicated code with linux/nvme-core.c and qemu/nvme.c.
The ideal result is to have a multi level NVMe stack(similar as SCSI).
So we can re-use the nvme code, for example

                       .-------------------------.
                       | NVMe device register    |
 Upper level           | NVMe protocol process   |
                       |                         |
                       '-------------------------'



             .-----------.    .-----------.    .------------------.
Lower level  |   PCIe    |    | VIRTIO    |    |NVMe over Fabrics |
             |           |    |           |    |initiator         |
             '-----------'    '-----------'    '------------------'

todo:
- tune performance. Should be as good as virtio-blk/virtio-scsi
- support discard/flush/integrity
- need Redhat's help for the VIRTIO_ID_NVME pci id
- multi level NVMe stack
Hi Ming,
Hi Keith,
I'll be out for travel for the next week, so I won't have much time to
do a proper review till the following week.

I think it'd be better to get this hierarchy setup to make the most reuse
possible than to have this much code duplication between the existing
driver and emulated qemu nvme. For better or worse, I think the generic
nvme layer is where things are going. Are you signed up with the fabrics
contributors?
No. How to sign up?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help