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.Dd May 31, 2020 27.Dt IOVCTL 8 28.Os 29.Sh NAME 30.Nm iovctl 31.Nd "PCI SR-IOV configuration utility" 32.Sh SYNOPSIS 33.Nm 34.Fl C 35.Fl f Ar config-file 36.Op Fl n 37.Nm 38.Fl D 39.Op Fl f Ar config-file | Fl d Ar device 40.Op Fl n 41.Nm 42.Fl S 43.Op Fl f Ar config-file | Fl d Ar device 44.Sh DESCRIPTION 45The 46.Nm 47utility creates or destroys PCI Single-Root I/O Virtualization 48.Pq SR-IOV 49Virtual Functions 50.Pq VFs . 51When invoked with the 52.Fl C 53flag, 54.Nm 55creates VFs as children of the Physical Function 56.Pq PF 57configured in the specified configuration file. 58When invoked with the 59.Fl D 60flag, 61.Nm 62destroys all VFs that are children of the specified device. 63Available PF devices can be seen in 64.Pa /dev/iov/ . 65.Pp 66The following options are available: 67.Bl -tag -width indent 68.It Fl C 69Enable SR-IOV on the specified PF device and create VF children. 70This operation will fail if the PF already has VF children. 71This option must be used in conjunction with the 72.Fl f 73option. 74.It Fl d Ar device 75Specify the PF device to use for the given operation. 76.Ar device 77may either be the name of a PF device, or a full path name to a node in 78.Pa /dev/iov/ . 79This option may not be used with the 80.Fl C 81option. 82.It Fl D 83Delete all VF children of the specified PF device. 84This operation will fail if SR-IOV is not currently enabled on the specified 85device. 86.It Fl f Ar config-file 87Specify the pathname of the configuration file. 88For the 89.Fl C 90option, this file will be used to specify all configuration values. 91For the 92.Fl D 93and 94.Fl S 95options, this file will only be used to specify the name of the PF device. 96.Pp 97See 98.Xr iovctl.conf 99for a description of the config file format and documentation of the 100configuration parameters that apply to all PF drivers. 101See the PF driver manual page for configuration parameters specific to 102particular hardware. 103.It Fl n 104Perform a dry-run. 105Perform all validation of the specified action and print what would be done, 106but do not perform the actual creation or destruction of VFs. 107This option may not be used with the 108.Fl S 109flag. 110.It Fl S 111Read the configuration schema from the specified device and print its contents 112to stdout. 113This action may be used to discover the configuration parameters supported on 114a given PF device. 115.El 116.Sh SEE ALSO 117.Xr iovctl.conf 5 , 118.Xr rc.conf 5 119.Sh AUTHORS 120This manual page was written by 121.An Ryan Stone Aq Mt rstone@FreeBSD.org . 122