GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
* Sign Up! *

Support
Customer Portal
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
VIRTIO(4) FreeBSD Kernel Interfaces Manual VIRTIO(4)

virtioVirtIO Device Support

To compile VirtIO device support into the kernel, place the following lines in your kernel configuration file:

device virtio
device virtio_pci

Alternatively, to load VirtIO support as modules at boot time, place the following lines in loader.conf(5):

virtio_load="YES"
virtio_pci_load="YES"

VirtIO is a specification for para-virtualized I/O in a virtual machine (VM). Traditionally, the hypervisor emulated real devices such as an Ethernet interface or disk controller to provide the VM with I/O. This emulation is often inefficient.

VirtIO defines an interface for efficient I/O between the hypervisor and VM. The virtio module provides a shared memory transport called a virtqueue. The device driver represents an emulated PCI device that the hypervisor makes available to the VM. This device provides the probing, configuration, and interrupt notifications needed to interact with the hypervisor. FreeBSD supports the following VirtIO devices:

An emulated Ethernet device is provided by the vtnet(4) device driver.
An emulated disk controller is provided by the virtio_blk(4) device driver.
Provided by the virtio_console(4) driver.
Provided by the virtio_random(4) driver.
A pseudo-device to allow the VM to release memory back to the hypervisor is provided by the virtio_balloon(4) device driver.
Graphics support is provided by the virtio_gpu(4) device driver.
An emulated SCSI HBA is provided by the virtio_scsi(4) device driver.

Tunables can be set at the loader(8) prompt before booting the kernel or stored in loader.conf(5).

hw.virtio.pci.disable_msix
If set to 1, disables MSI-X. The default value is 0.
hw.virtio.pci.transitional
For a transitional virtio device, this tunable specifies whether to negotiate modern mode and use the modern virtio driver (1) or to negotiate legacy mode and use the legacy virtio driver (0). The default value is 0.

Support for VirtIO first appeared in FreeBSD 9.0.

FreeBSD support for VirtIO was first added by Bryan Venteicher <bryanv@FreeBSD.org>.

April 4, 2026 FreeBSD 15.1-RELEASE-p1

Search for    or go to Top of page |  Section 4 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.