VIRTIO(4)						   BSD Kernel Interfaces 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 pro- vides 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>. BSD
January 22, 2012 BSD