VIRTIO(4) | Device Drivers Manual | VIRTIO(4) |
NAME¶
virtio
— VirtIO
Device Support
SYNOPSIS¶
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"
DESCRIPTION¶
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 virtio_pci
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:
Ethernet
- An emulated Ethernet device is provided by the vtnet(4) device driver.
Block
- An emulated disk controller is provided by the virtio_blk(4) device driver.
SCSI
- An emulated SCSI HBA is provided by the virtio_scsi(4) device driver.
Balloon
- A pseudo-device to allow the VM to release memory back to the hypervisor is provided by the virtio_balloon(4) device driver.
SEE ALSO¶
virtio_balloon(4), virtio_blk(4), virtio_console(4), virtio_scsi(4), vtnet(4)
HISTORY¶
Support for VirtIO first appeared in FreeBSD 9.0.
AUTHORS¶
FreeBSD support for VirtIO was first added by Bryan Venteicher <bryanv@FreeBSD.org>.
January 22, 2012 | Debian |