1.\" 2.\" Copyright (c) 2014 Sandvine Inc. 3.\" All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24.\" SUCH DAMAGE. 25.\" 26.\" $FreeBSD$ 27.\" 28.Dd May 31, 2020 29.Dt IOVCTL 8 30.Os 31.Sh NAME 32.Nm iovctl 33.Nd "PCI SR-IOV configuration utility" 34.Sh SYNOPSIS 35.Nm 36.Fl C 37.Fl f Ar config-file 38.Op Fl n 39.Nm 40.Fl D 41.Op Fl f Ar config-file | Fl d Ar device 42.Op Fl n 43.Nm 44.Fl S 45.Op Fl f Ar config-file | Fl d Ar device 46.Sh DESCRIPTION 47The 48.Nm 49utility creates or destroys PCI Single-Root I/O Virtualization 50.Pq SR-IOV 51Virtual Functions 52.Pq VFs . 53When invoked with the 54.Fl C 55flag, 56.Nm 57creates VFs as children of the Physical Function 58.Pq PF 59configured in the specified configuration file. 60When invoked with the 61.Fl D 62flag, 63.Nm 64destroys all VFs that are children of the specified device. 65Available PF devices can be seen in 66.Pa /dev/iov/ . 67.Pp 68The following options are available: 69.Bl -tag -width indent 70.It Fl C 71Enable SR-IOV on the specified PF device and create VF children. 72This operation will fail if the PF already has VF children. 73This option must be used in conjunction with the 74.Fl f 75option. 76.It Fl d Ar device 77Specify the PF device to use for the given operation. 78.Ar device 79may either be the name of a PF device, or a full path name to a node in 80.Pa /dev/iov/ . 81This option may not be used with the 82.Fl C 83option. 84.It Fl D 85Delete all VF children of the specified PF device. 86This operation will fail if SR-IOV is not currently enabled on the specified 87device. 88.It Fl f Ar config-file 89Specify the pathname of the configuration file. 90For the 91.Fl C 92option, this file will be used to specify all configuration values. 93For the 94.Fl D 95and 96.Fl S 97options, this file will only be used to specify the name of the PF device. 98.Pp 99See 100.Xr iovctl.conf 101for a description of the config file format and documentation of the 102configuration parameters that apply to all PF drivers. 103See the PF driver manual page for configuration parameters specific to 104particular hardware. 105.It Fl n 106Perform a dry-run. 107Perform all validation of the specified action and print what would be done, 108but do not perform the actual creation or destruction of VFs. 109This option may not be used with the 110.Fl S 111flag. 112.It Fl S 113Read the configuration schema from the specified device and print its contents 114to stdout. 115This action may be used to discover the configuration parameters supported on 116a given PF device. 117.El 118.Sh SEE ALSO 119.Xr iovctl.conf 5 , 120.Xr rc.conf 5 121.Sh AUTHORS 122This manual page was written by 123.An Ryan Stone Aq Mt rstone@FreeBSD.org . 124