RTX-5070-Ti-Passthrough auf Proxmox VE 9.2 (AM5, B650)

Getestet am 2026-10-17 · aktualisiert am 2026-10-17

Mein täglicher Desktop ist eine VM. Die RTX 5070 Ti, der USB-Controller und eine Games-NVMe gehen direkt vom Proxmox-Host in sie hinein. Das hier ist genau dieser Aufbau, von der laufenden Maschine kopiert. Wenn ein BIOS- oder Treiber-Update etwas ändert, bekommt diese Seite ein neues Datum.

Getestet mit

TeilWert
BoardGigabyte B650 AORUS ELITE AX V2, BIOS F41 (2026-05-21)
CPUAMD Ryzen 9 7950X3D, 16C/32T
GPUNVIDIA GeForce RTX 5070 Ti, PCI-IDs 10de:2c05 (GPU) und 10de:22e9 (Audio)
HostProxmox VE 9.2.20, Kernel 7.0.14-19-pve, ZFS-Root
GuestUbuntu 26.04.1 LTS, Kernel 7.0.0-38-generic, nvidia-driver-595-open 595.99.02
Display3440x1440 bei 164.9 Hz VRR (DisplayPort) plus 2560x1440 bei 143.9 Hz (HDMI), beide von der 5070 Ti

Das BIOS F41 hat es kaputt gemacht, eine Einstellung hat es repariert

Nach dem Update dieses Boards von F33 auf F41 startete die VM nicht mehr. Das Host-Log sagte:

vfio 0000:01:00.0: Firmware has requested this device have a 1:1 IOMMU mapping, rejecting configuring the device without a 1:1 mapping

Der Fix liegt im BIOS, unter Settings → AMD CBS → NBIO Common Options:

EinstellungSetzen auf
IOMMUEnabled (nicht Auto; Enabled zeigt erst die nächste Option)
Kernel DMA Protection IndicatorDisabled
Pre-boot DMA ProtectionEnabled (so gelassen)

Nach dem Speichern hatte das Boot-Log null "1:1"-Zeilen, und die VM startete mit GPU, USB-Controller und einer NVMe, alle durchgereicht. Derselbe Fix wird auch für Gigabyte-X870E-Boards mit neuerem AGESA berichtet [2][3].

Tipp: systemctl reboot --firmware-setup auf dem Host bootet direkt ins BIOS, ohne Timing einer Taste.

Host-Setup

Die Befehle folgen dem Proxmox-Admin-Guide, Abschnitt PCI(e) Passthrough [1]. Führe sie in der Shell des Nodes aus.

1. Die VFIO-Module laden

printf "vfio\nvfio_iommu_type1\nvfio_pci\n" > /etc/modules-load.d/vfio.conf

2. Die IDs der Karte finden

lspci -nn | grep -i nvidia

Zwei Zeilen kommen zurück, die GPU und ihr HDMI-Audio. Notiere beide [10de:xxxx]-IDs und die Busadresse (hier 01:00).

3. Die Karte für VMs reservieren

echo "options vfio-pci ids=10de:2c05,10de:22e9" > /etc/modprobe.d/vfio.conf
printf "blacklist nouveau\nblacklist nvidiafb\n" > /etc/modprobe.d/blacklist-nouveau.conf
update-initramfs -u -k all
reboot

Setze deine eigenen IDs aus Schritt 2 ein. Dieser Host brauchte keine zusätzlichen Kernel-Parameter: /proc/cmdline ist der Proxmox-Standard (quiet, ZFS-Root), ohne iommu=pt und ohne nomodeset.

4. Prüfen, ob es geklappt hat

lspci -nnk -s 01:00
cat /proc/cmdline

Beide Funktionen müssen Kernel driver in use: vfio-pci zeigen.

Die VM

Die Passthrough-Zeilen aus qm config auf der laufenden VM:

bios: ovmf
machine: q35
cpu: host
efidisk0: local-zfs:vm-210-disk-0,efitype=4m,pre-enrolled-keys=0,size=1M
hostpci0: 0000:01:00,pcie=1
vga: virtio

Shell-Äquivalent, VM 100 und die Karte bei 01:00:

qm set 100 -hostpci0 0000:01:00,pcie=1

Guest-Treiber

RTX-50-Karten (Blackwell) werden nur von NVIDIAs offenen Kernel-Modulen unterstützt [4], also auf Ubuntu das -open-Paket wählen:

sudo apt update
sudo ubuntu-drivers list
sudo apt install -y nvidia-driver-595-open
sudo reboot
nvidia-smi

Bekannte Probleme

SymptomWas es behoben hat
1:1 IOMMU mapping nach einem BIOS-UpdateDie BIOS-Einstellung oben.
Could not open /dev/vfio/NN: Device or resource busy beim StartDirekt nach einem qm shutdown gesehen. Sekunden später hielt nichts mehr das Gerät; ein zweiter qm start hat funktioniert hier gesehen.
Host oder Installer bootet zu schwarzem Bildschirmnomodeset an die Kernel-Zeile anhängen (Installer: e beim Boot-Eintrag drücken). Dieser Host brauchte das nach der Installation nicht.
Guest hängt beim Booten mit aktivem Primary GPUPrimary GPU aus, vga: virtio hier gesehen.

Quellen

  1. Proxmox VE admin guide: PCI(e) Passthrough
  2. Proxmox forum: VFIO, firmware has requested a 1:1 IOMMU mapping
  3. Level1Techs: Gigabyte X870E (AGESA 1.2.2) passthrough fails with the 1:1 mapping error
  4. NVIDIA: transition to open-source GPU kernel modules