blob: eb7eb3bdc2b764bca299519a8184837030761f3a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
.. SPDX-License-Identifier: BSD-3-Clause
Copyright 2019 Mellanox Technologies, Ltd
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.
BSD nic_uio
BSD ``nic_uio`` module supported.
Linux VFIO
Works with ``vfio-pci`` kernel module.
Other kdrv
Kernel module other than above ones supported.
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``.
References
==========
* `OASIS: Virtual I/O Device (VIRTIO) Version 1.1 <https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html>`_
* `QEMU: Vhost-user Protocol <https://qemu.weilnetz.de/doc/interop/vhost-user.html>`_
Features Table
==============
.. _table_vdpa_pmd_features:
.. include:: overview_feature_table.txt
.. Note::
Features marked with "P" are partially supported. Refer to the appropriate
driver guide in the following sections for details.
|