mirror of
https://github.com/freebsd/freebsd-src.git
synced 2026-10-28 11:25:21 +01:00
Add NIC-specific VF status to the existing ifconfig -v output. Fetch the data through libifconfig using a separate native route Netlink query. Group optional identity, initialization, resources, VLAN policy, administrator policy, protocol, traffic-permission, and fault containment fields. Omitted fields remain distinct from false or zero. Refer users to iovctl -L for device-neutral PCI attachment and passthrough state. This is a Netlink-native evolution of the original interface by Eric Joyner. Relnotes: yes Sponsored by: Intel Corporation (initial version) Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D58778 Co-authored-by: Eric Joyner <[email protected]>
149 lines
4.3 KiB
Plaintext
149 lines
4.3 KiB
Plaintext
.\"
|
|
.\" Copyright (c) 2014 Sandvine Inc.
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.Dd August 10, 2026
|
|
.Dt IOVCTL 8
|
|
.Os
|
|
.Sh NAME
|
|
.Nm iovctl
|
|
.Nd "PCI SR-IOV configuration utility"
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Fl C
|
|
.Fl f Ar config-file
|
|
.Op Fl n
|
|
.Nm
|
|
.Fl D
|
|
.Op Fl f Ar config-file | Fl d Ar device
|
|
.Op Fl n
|
|
.Nm
|
|
.Fl L
|
|
.Op Fl f Ar config-file | Fl d Ar device
|
|
.Nm
|
|
.Fl S
|
|
.Op Fl f Ar config-file | Fl d Ar device
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
utility configures and inspects PCI Single-Root I/O Virtualization
|
|
.Pq SR-IOV
|
|
Virtual Functions
|
|
.Pq VFs .
|
|
When invoked with the
|
|
.Fl C
|
|
flag,
|
|
.Nm
|
|
creates VFs as children of the Physical Function
|
|
.Pq PF
|
|
configured in the specified configuration file.
|
|
When invoked with the
|
|
.Fl D
|
|
flag,
|
|
.Nm
|
|
destroys all VFs that are children of the specified device.
|
|
Available PF devices can be seen in
|
|
.Pa /dev/iov/ .
|
|
.Pp
|
|
The following options are available:
|
|
.Bl -tag -width indent
|
|
.It Fl C
|
|
Enable SR-IOV on the specified PF device and create VF children.
|
|
This operation will fail if the PF already has VF children.
|
|
This option must be used in conjunction with the
|
|
.Fl f
|
|
option.
|
|
.It Fl d Ar device
|
|
Specify the PF device to use for the given operation.
|
|
.Ar device
|
|
may either be the name of a PF device, or a full path name to a node in
|
|
.Pa /dev/iov/ .
|
|
This option may not be used with the
|
|
.Fl C
|
|
option.
|
|
.It Fl D
|
|
Delete all VF children of the specified PF device.
|
|
This operation will fail if SR-IOV is not currently enabled on the specified
|
|
device.
|
|
.It Fl f Ar config-file
|
|
Specify the pathname of the configuration file.
|
|
For the
|
|
.Fl C
|
|
option, this file will be used to specify all configuration values.
|
|
For the
|
|
.Fl D ,
|
|
.Fl L ,
|
|
and
|
|
.Fl S
|
|
options, this file will only be used to specify the name of the PF device.
|
|
.Pp
|
|
See
|
|
.Xr iovctl.conf 5
|
|
for a description of the config file format and documentation of the
|
|
configuration parameters that apply to all PF drivers.
|
|
See the PF driver manual page for configuration parameters specific to
|
|
particular hardware.
|
|
.It Fl n
|
|
Perform a dry-run.
|
|
Perform all validation of the specified action and print what would be done,
|
|
but do not perform the actual creation or destruction of VFs.
|
|
This option may not be used with the
|
|
.Fl L
|
|
or
|
|
.Fl S
|
|
flag.
|
|
.It Fl L
|
|
Report the current PCI SR-IOV topology of the specified PF.
|
|
The output identifies the PF and each configured VF by PCI location, reports
|
|
whether each VF is attached to a host driver, and identifies bindings to
|
|
.Va ppt .
|
|
An unconfigured PF reports its enable state and VF capacity without any
|
|
per-VF records.
|
|
A passthrough binding does not imply that a running virtual machine currently
|
|
owns the VF.
|
|
See
|
|
.Xr vmm 4
|
|
for passthrough-device configuration.
|
|
.It Fl S
|
|
Read the configuration schema from the specified device and print its contents
|
|
to stdout.
|
|
This action may be used to discover the configuration parameters supported on
|
|
a given PF device.
|
|
.El
|
|
.Pp
|
|
For network devices, use
|
|
.Xr ifconfig 8
|
|
with the
|
|
.Fl v
|
|
option on the PF interface to display NIC-specific VF initialization,
|
|
resource, and policy state.
|
|
.Sh SEE ALSO
|
|
.Xr vmm 4 ,
|
|
.Xr iovctl.conf 5 ,
|
|
.Xr rc.conf 5 ,
|
|
.Xr ifconfig 8
|
|
.Sh AUTHORS
|
|
This manual page was written by
|
|
.An Ryan Stone Aq Mt [email protected] .
|