FreeBSD manual
download PDF document: iovctl.conf.5.pdf
IOVCTL.CONF(5) FreeBSD File Formats Manual IOVCTL.CONF(5)
NAME
iovctl.conf - IOVCTL configuration file
DESCRIPTION
The iovctl.conf file is the configuration file for the iovctl(8) program.
This file specifies configuration parameters for a single Physical
Function (PF) device. To configure SR-IOV on multiple PF devices, use
one configuration file for each PF. The locations of all iovctl(8)
configuration files are specified in rc.conf(5).
The iovctl.conf file uses UCL format. UCL syntax is documented at the
official UCL website: http://github.com/vstakhov/libucl.
There are three types of sections in the iovctl.conf file. A section is
a key at the top level of the file with a list as its value. The list
may contain the keys specified in the OPTIONS section of this manual
page. Individual PF driver implementations may specify additional
device-specific configuration keys that they will accept. The order in
which sections appear in iovctl.conf is ignored. No two sections may
have the same key. For example, two sections for VF-1 must not be
defined.
The first section type is the PF section. This section always has the
key "PF"; therefore, only one such section may be defined. This section
defines configuration parameters that apply to the PF as a whole.
The second section type is the VF section. This section has the key
"VF-" followed by a VF index. VF indices start at 0 and always increment
by 1. Valid VF indices are in the range of 0 to (num_vfs - 1). The VF
index must be given as a decimal integer with no leading zeros. This
section defines configuration parameters that apply to a single VF.
The third section type is the default section. This section always has
the key "DEFAULT"; therefore, only one such section may be specified.
This section defines default configuration parameters that apply to all
VFs. All configuration keys that are valid to be applied to a VF are
valid in this section. An individual VF section may override a default
specified in this section by providing a different value for the
configuration parameter. Note that the default section applies to ALL
VFs. The default section must appear before any VF sections. The
default section may appear before or after the PF section.
The following option types are supported:
boolean
Accepts a boolean value of true or false.
mac-addr
Accepts a unicast MAC address specified as a string of the form
xx:xx:xx:xx:xx:xx, where xx is one or two hexadecimal digits.
string Accepts any string value.
uint8_t
Accepts any integer in the range 0 to 255, inclusive.
uint16_t
OPTIONS
The following parameters are accepted by all PF drivers:
device (string)
This parameter specifies the name of the PF device. This
parameter is required to be specified.
num_vfs (uint16_t)
This parameter specifies the number of VF children to create.
This parameter may not be zero. The maximum value of this
parameter is device-specific.
The following parameters are accepted by all VFs:
passthrough (boolean)
This parameter controls whether the VF is reserved for the use of
the bhyve(8) hypervisor as a PCI passthrough device. If this
parameter is set to true, then the VF will be reserved as a PCI
passthrough device and it will not be accessible from the host
OS. The default value of this parameter is false.
See the PF driver manual page for configuration parameters specific to
particular hardware.
EXAMPLES
This sample file will create 3 VFs as children of the ix0 device. VF-1
and VF-2 are set as bhyve(8) passthrough devices through the use of the
default section. VF-0 is not configured as a passthrough device as it
explicitly overrides the default. VF-0 also sets a device-specific
parameter named mac-addr.
PF {
device : "ix0";
num_vfs : 3;
}
DEFAULT {
passthrough : true;
}
VF-0 {
mac-addr : "02:56:48:7e:d9:f7";
passthrough : false;
}
SEE ALSO
rc.conf(5), iovctl(8)
AUTHORS
This manual page was written by Ryan Stone <rstone@FreeBSD.org>.
FreeBSD 14.0-RELEASE-p11 May 29, 2020 FreeBSD 14.0-RELEASE-p11