bdev_virtio: remove internal README.md
The *TODO* section was outdated. Most of this README's contents have been already moved to doc/virtio.md and doc/bdev.md. Change-Id: I2f2108afdc543276c9f08ae053ccebdbd6b1a229 Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com> Reviewed-on: https://review.gerrithub.io/384054 Reviewed-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
parent
29d4d1de08
commit
071cc42c7b
@ -1,63 +0,0 @@
|
|||||||
# SPDK virtio bdev module
|
|
||||||
|
|
||||||
This directory contains an experimental SPDK virtio bdev module.
|
|
||||||
It currently supports very basic read/write operations for
|
|
||||||
virtio-scsi drive. Currently it will only work with a single
|
|
||||||
target with a single LUN.
|
|
||||||
|
|
||||||
It supports two different usage models:
|
|
||||||
* PCI - This is the standard mode of operation when used in a guest virtual
|
|
||||||
machine, where QEMU has presented the virtio-scsi controller as a virtual
|
|
||||||
PCI device. The virtio-scsi controller might be implemented in the host OS
|
|
||||||
by SPDK vhost-scsi. Kernel/QEMU vhost-scsi are not supported yet.
|
|
||||||
* User vhost - Can be used to connect to an SPDK vhost-scsi target running on
|
|
||||||
the same host.
|
|
||||||
|
|
||||||
Note that 1GB hugepages is pretty much required to use this driver in
|
|
||||||
user-vhost mode. vhost protocol requires passing a file descriptor for
|
|
||||||
each region of memory being shared with the vhost target. Since DPDK opens
|
|
||||||
every huge page explicitly, it is fairly limited on how many file descriptors
|
|
||||||
it can pass due to the VHOST_MEMORY_MAX_NREGIONS limit of 8.
|
|
||||||
|
|
||||||
Use the following configuration file snippet to enumerate a virtio-scsi PCI
|
|
||||||
device and present its LUNs as bdevs.
|
|
||||||
|
|
||||||
~~~{.sh}
|
|
||||||
[VirtioPci]
|
|
||||||
Enable Yes
|
|
||||||
~~~
|
|
||||||
|
|
||||||
Use the following configuration file snippet to enumerate an SPDK vhost-scsi
|
|
||||||
controller and present its LUNs as bdevs. In this case, the SPDK vhost-scsi
|
|
||||||
target has created an SPDK vhost-scsi controller which is accessible through
|
|
||||||
the /tmp/vhost.0 domain socket.
|
|
||||||
|
|
||||||
~~~{.sh}
|
|
||||||
[VirtioUser0]
|
|
||||||
Path /tmp/vhost.0
|
|
||||||
~~~
|
|
||||||
|
|
||||||
## Todo:
|
|
||||||
* Add I/O channel support. Includes requesting correct number of queues
|
|
||||||
(based on core count). Fail device initialization if not enough queues
|
|
||||||
can be allocated.
|
|
||||||
* Add RPCs.
|
|
||||||
* Break out the "rte_virtio" code into a separate library that is not
|
|
||||||
linked directly to the bdev module. This would allow that part of the
|
|
||||||
code to potentially get used and tested outside of the SPDK bdev framework.
|
|
||||||
* Check for allocation failures in bdev_virtio.c code.
|
|
||||||
* Add SPDK_TRACELOGs.
|
|
||||||
* Add virtio-blk support. This will require some rework in the core
|
|
||||||
virtio code (in the rte_virtio subdirectory) to allow for multiple
|
|
||||||
device types.
|
|
||||||
* Bottom out on whether we should have one virtio driver to cover both
|
|
||||||
scsi and blk. If these should be separate, then this driver should be
|
|
||||||
renamed to something scsi specific.
|
|
||||||
* Add reset support.
|
|
||||||
* Understand and handle queue full conditions.
|
|
||||||
* Automated test scripts for both PCI and vhost-user scenarios.
|
|
||||||
* Document Virtio config file section in examples. Should wait on this until
|
|
||||||
enough of the above items are implemented to consider this module as ready
|
|
||||||
for more general use.
|
|
||||||
* Specify the name of the bdev in the config file (and RPC) - currently we
|
|
||||||
just hardcode a single bdev name "Virtio0".
|
|
Loading…
Reference in New Issue
Block a user