VIRTIO(4)
β¨ VIRTIO β¨
ok so bestie, let's talk about virtio β short for VirtIO Device Support, and it's literally the main character of VM I/O π
πΈ SYNOPSIS πΈ
so if you wanna compile VirtIO device support directly into your kernel, you gotta drop these lines into your kernel configuration file:
device virtio
device virtio_pci
orrr, if you'd rather load VirtIO support as modules at boot time (very low-effort, very slay), put these lines in loader.conf(5) instead:
virtio_load="YES"
virtio_pci_load="YES"
π¦ DESCRIPTION π¦
VirtIO is a specification for para-virtualized I/O in a virtual machine (VM). periodt.
ok so back in the day, the hypervisor would emulate real devices β think an Ethernet interface, or a disk controller β just to give the VM some I/O. and honestly? that emulation is often inefficient. it's giving try-hard. it's giving wasting everybody's time. π
VirtIO said "not me" and defined an interface for efficient I/O between the hypervisor and the VM instead. iconic behavior fr fr.
so here's the tea:
- the
virtiomodule provides a shared memory transport called a virtqueue - the
virtio_pcidevice driver represents an emulated PCI device that the hypervisor makes available to the VM - that device provides all the probing, configuration, and interrupt notifications you need to actually interact with the hypervisor
and FreeBSD supports the following VirtIO devices, no cap:
- Ethernet β an emulated Ethernet device, provided by the
vtnet(4)device driver π«Ά - Block β an emulated disk controller, provided by the
virtio_blk(4)device driver πΎ - SCSI β an emulated SCSI HBA, provided by the
virtio_scsi(4)device driver β¨ - Balloon β a pseudo-device that lets the VM release memory back to the hypervisor, provided by the
virtio_balloon(4)device driver π
like⦠the range? the versatility? obsessed.
π SEE ALSO π
go read these next bestie, they're all part of the fam:
β HISTORY β
Support for VirtIO first appeared in FreeBSD 9.0. a legend from day one, honestly π
π AUTHORS π
FreeBSD support for VirtIO was first added by Bryan Venteicher <bryanv@FreeBSD.org>. we stan a pioneer π
and that's the whole vibe check! go configure your VM and slay π
Debian Β· January 22, 2012 Β· VIRTIO(4) β mwah, love u, bye bestie π¦πΈ
π¦ where this page comes from
- debian bookworm: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- debian trixie: freebsd-manpages 12.2-2 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu jammy: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu noble: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu questing: freebsd-manpages 12.2-2
- ubuntu resolute: freebsd-manpages 12.2-2build1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu stonking: freebsd-manpages 12.2-2build1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- Copyright (c) 2011 Bryan Venteicher
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms