doc/vhost_processing: replace the ASCII diagram with an SVG one
All credits go to Tomasz. Change-Id: I0664aad9abb87f9d04c243654f308c22f968cef2 Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com> Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com> Reviewed-on: https://review.gerrithub.io/412119 Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
This commit is contained in:
parent
8a989c7c1e
commit
026c69db1a
@ -907,7 +907,7 @@ EXAMPLE_RECURSIVE = NO
|
||||
# that contain images that are to be included in the documentation (see the
|
||||
# \image command).
|
||||
|
||||
IMAGE_PATH =
|
||||
IMAGE_PATH = img
|
||||
|
||||
# The INPUT_FILTER tag can be used to specify a program that doxygen should
|
||||
# invoke to filter for each input file. Doxygen will invoke the filter program
|
||||
|
2
doc/img/qemu_vhost_data_flow.svg
Normal file
2
doc/img/qemu_vhost_data_flow.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 17 KiB |
@ -53,55 +53,7 @@ One of major Vhost-user use cases is networking (DPDK) or storage (SPDK)
|
||||
offload in QEMU. The following diagram presents how QEMU-based VM
|
||||
communicates with SPDK Vhost-SCSI device.
|
||||
|
||||
```
|
||||
+-------------------------------------QEMU-----------------------------+ +------------------------------------------SPDK vhost--------------------+
|
||||
| | | |
|
||||
| +---------------------------------VM-----------------------------+ | | +-----------------------------------------+ |
|
||||
| | | | | | | |
|
||||
| | +----------------------------------------------------------+ | | | | | |
|
||||
| | | | | | | | | |
|
||||
| | | +--------------------------+--+--+-------------+------------+ | | |
|
||||
| | | | | | Vhost-SCSI | |
|
||||
| | | | Shared hugepage memory | | device | |
|
||||
| | | | | | | |
|
||||
| | | | +-----------------------------------------------------+ | | | |
|
||||
| | | | | | | polling | | |
|
||||
| | | | | Virtqueues +-----------------> | |
|
||||
| | | Virtio-SCSI PCI driver | | | | | +-----------------------------------+ | |
|
||||
| | | | +-----------------------------------------------------+ | | | | | |
|
||||
| | | | | | | DMA | | SPDK bdev(s) | | |
|
||||
| | | | | I/O buffers <--------------------+ (NVMe, NVMf, Ceph RBD, PMEM) | | |
|
||||
+---------> | | | | | | | | | |
|
||||
| | | | | +-----------------------------------------------------+ | | +-----------------------------------+ | |
|
||||
| | | | | | | | |
|
||||
| | | | +--------------------------+--+--+-------------+------------+ | +----------------------+ | |
|
||||
| | | | | | | | | | | | |
|
||||
| | +--+--------^--+----------------------------------------------+--+ | | | | Unix domain socket | | |
|
||||
| | | | | | | | | | |
|
||||
| | +-----------+--v-----------+-------------------------------------+ | | | +-------^--------------+ | |
|
||||
| | | | | | | | | | |
|
||||
| | | Virtio-SCSI device | Vhost-user driver (master) | | | +------------------------------------+----+ |
|
||||
| | | | | | | | | |
|
||||
| | | | | | +------------------------------------------------------------------------+
|
||||
| | | | | | | |
|
||||
| | | | | | | |
|
||||
| | | | | | Vhost-user messages | |
|
||||
| | | | <-------------------------------------------------------+ |
|
||||
| | | | | | |
|
||||
| | | | +----------------+ | eventfd interrupt |
|
||||
| | | | | callfd <---------------------------------------------------------------------------------+
|
||||
| | +--------------------------+--------------------+---+------------+ |
|
||||
| | | |
|
||||
| +----------------------------------------------------------------------+
|
||||
| |
|
||||
| |irqfd
|
||||
| |
|
||||
| +---v---+
|
||||
| | |
|
||||
+---------------------------------------------------------+ KVM |
|
||||
| |
|
||||
+-------+
|
||||
```
|
||||

|
||||
|
||||
The irqfd mechanism isn't described in this document, as it KVM/QEMU-specific.
|
||||
Briefly speaking, doing an eventfd_write on the callfd descriptor will
|
||||
|
Loading…
Reference in New Issue
Block a user