Volant
HomeDocsAPI Reference
HomeDocsAPI Reference
  1. Guides
  • Introduction
    • Why Volant
    • Introduction
  • Getting Started
    • Installation
    • Quick Start: Initramfs Strategy
    • Quick Start: Rootfs Strategy
  • Guides
    • Networking
    • Cloud-Init
    • Deployments
    • GPU Passthrough
    • Troubleshooting
  • Plugin Development
    • Overview
    • Initramfs Plugins
    • OCI/Rootfs Plugins
  • Architecture
    • Overview
    • Components
    • Data Flow
    • Networking
    • Boot and Runtime
    • Security and Limits
    • Extensibility
  • References
    • Plugin Manifest Schema
    • Fledge.toml Schema
    • VFIO API
    • volar(cli)
    • volantd (server)
    • kestrel(agent)
    • Glossary
  • Development
    • Contributing
    • Security
  1. Guides

GPU Passthrough

References:
internal/server/httpapi/httpapi.go (/api/v1/vfio/*)
internal/server/httpapi/openapi.go (OpenAPI definitions)
internal/server/devicemanager/vfio_manager.go (binding, validation)

Host requirements#

IOMMU enabled in kernel/bootloader
vfio-pci driver available
Root privileges to bind/unbind

API overview#

Endpoints (all POST):
/api/v1/vfio/devices/info
/api/v1/vfio/devices/validate
/api/v1/vfio/devices/iommu-groups
/api/v1/vfio/devices/bind
/api/v1/vfio/devices/unbind
/api/v1/vfio/devices/group-paths
See docs/6_reference/3_vfio-api.md for full reference.

Typical flow#

1.
Validate the device(s) and allowlist (optional):
2.
Bind to vfio-pci:
3.
Reference in plugin manifest under devices:
{
  "devices": {
    "pci_passthrough": ["0000:01:00.0"],
    "allowlist": ["10de:*"]
  }
}
4.
Create VM with that plugin and start it.
5.
To unbind later:

Troubleshooting#

Ensure device is in its own IOMMU group or pass through the full group
Validate group membership via /devices/iommu-groups
Check that vfio-pci is the active driver
NUMA considerations are exposed by the info endpoint
Modified at 2025-10-05 17:46:12
Previous
Deployments
Next
Troubleshooting
Built with