1. Overview of vDPA Drivers Features
This section explains the supported features that are listed in the table below.
- csum
Device can handle packets with partial checksum.
- guest csum
Guest can handle packets with partial checksum.
- mac
Device has given MAC address.
- gso
Device can handle packets with any GSO type.
- guest tso4
Guest can receive TSOv4.
- guest tso6
Guest can receive TSOv6.
- ecn
Device can receive TSO with ECN.
- ufo
Device can receive UFO.
- host tso4
Device can receive TSOv4.
- host tso6
Device can receive TSOv6.
- mrg rxbuf
Guest can merge receive buffers.
- ctrl vq
Control channel is available.
- ctrl rx
Control channel RX mode support.
- any layout
Device can handle any descriptor layout.
- guest announce
Guest can send gratuitous packets.
- mq
Device supports Receive Flow Steering.
- version 1
v1.0 compliant.
- log all
Device can log all write descriptors (live migration).
- indirect desc
Indirect buffer descriptors support.
- event idx
Support for avail_idx and used_idx fields.
- mtu
Host can advise the guest with its maximum supported MTU.
- in_order
Device can use descriptors in ring order.
- IOMMU platform
Device support IOMMU addresses.
- packed
Device support packed virtio queues.
- proto mq
Support the number of queues query.
- proto log shmfd
Guest support setting log base.
- proto rarp
Host can broadcast a fake RARP after live migration.
- proto reply ack
Host support requested operation status ack.
- proto host notifier
Host can register memory region based host notifiers.
- proto pagefault
Slave expose page-fault FD for migration process.
- queue statistics
Support virtio queue statistics query.
- FreeBSD
Support FreeBSD.
- Linux
Support Linux.
- ARMv7
Support armv7 architecture.
- ARMv8
Support armv8a (64bit) architecture.
- Power8
Support PowerPC architecture.
- x86-32
Support 32bits x86 architecture.
- x86-64
Support 64bits x86 architecture.
- Usage doc
Documentation describes usage, In
doc/guides/vdpadevs/
.- Design doc
Documentation describes design. In
doc/guides/vdpadevs/
.- Perf doc
Documentation describes performance values, In
doc/perf/
.
Note
Most of the features capabilities should be provided by the drivers via the
next vDPA operations: get_features
and get_protocol_features
.
2. References
3. Features Table
Feature |
i f c v f |
m l x 5 |
n f p |
s f c |
---|---|---|---|---|
csum |
Y |
Y |
||
guest csum |
Y |
Y |
||
mac |
||||
gso |
||||
guest tso4 |
||||
guest tso6 |
||||
ecn |
||||
ufo |
||||
host tso4 |
Y |
Y |
||
host tso6 |
Y |
Y |
||
mrg rxbuf |
Y |
|||
ctrl vq |
||||
ctrl rx |
||||
any layout |
Y |
Y |
||
guest announce |
Y |
|||
mq |
Y |
|||
version 1 |
Y |
Y |
||
log all |
Y |
|||
indirect desc |
||||
event idx |
||||
mtu |
Y |
|||
in_order |
Y |
|||
IOMMU platform |
Y |
|||
packed |
Y |
|||
proto mq |
Y |
|||
proto log shmfd |
Y |
|||
proto rarp |
||||
proto reply ack |
||||
proto host notifier |
Y |
Y |
||
proto pagefault |
||||
queue statistics |
Y |
|||
FreeBSD |
||||
Linux |
Y |
Y |
Y |
|
ARMv7 |
||||
ARMv8 |
Y |
|||
Power8 |
Y |
|||
x86-32 |
Y |
Y |
||
x86-64 |
Y |
Y |
Y |
Y |
Usage doc |
Y |
Y |
||
Design doc |
Y |
|||
Perf doc |
Note
Features marked with “P” are partially supported. Refer to the appropriate driver guide in the following sections for details.