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.

3. Features Table

Table 3.3 Features availability in vDPA drivers

Feature

i f c v f

m l x 5

csum

Y

guest csum

Y

mac

gso

guest tso4

guest tso6

ecn

ufo

host tso4

Y

host tso6

Y

mrg rxbuf

ctrl vq

ctrl rx

any layout

Y

guest announce

Y

mq

Y

version 1

Y

log all

Y

indirect desc

event idx

mtu

Y

in_order

IOMMU platform

packed

Y

proto mq

Y

proto log shmfd

Y

proto rarp

proto reply ack

proto host notifier

Y

proto pagefault

queue statistics

Y

FreeBSD

Linux

Y

ARMv7

ARMv8

Y

Power8

Y

x86-32

Y

Y

x86-64

Y

Y

Usage doc

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.