Я пытаюсь настроить GPU passthrough с RX 6900XT. Следовал инструкции здесь: , но гостевая ОС не видит видеокарту. Вот что я сделал.
Шаг 1: Поскольку не был уверен, использую ли grub или systemd-boot, изменил оба файла — /etc/default/grub и /etc/kernel/cmdline:
Изменения в /etc/default/grub:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"
GRUB_CMDLINE_LINUX="root=ZFS=rpool/ROOT/pve-1 boot=zfs"
Изменения в /etc/kernel/cmdline:
root=ZFS=rpool/ROOT/pve-1 boot=zfs quiet amd_iommu=on iommu=pt
После изменений выполнил update-grub и proxmox-boot-tool refresh.
Шаг 2: Проверил, что IOMMU включён:
root@beatrice:~# dmesg | grep -e DMAR -e IOMMU
[ 1.239448] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported
[ 1.241134] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
[ 1.241834] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank).
[ 5.680671] AMD-Vi: AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
Шаг 3: Изменил /etc/modules, добавив:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
Шаг 4: Проверил перенаправление прерываний IOMMU:
root@beatrice:~# dmesg | grep 'remapping'
[ 1.241139] AMD-Vi: Interrupt remapping enabled
Шаг 5: Проверил изоляцию IOMMU:
root@beatrice:~# find /sys/kernel/iommu_groups/ -type l
... (список групп и устройств)
Шаг 6: Нашёл device и vendor id:
root@beatrice:~# lspci -n -s 0e:00
0e:00.0 0300: 1002:73bf (rev c0)
0e:00.1 0403: 1002:ab28
0e:00.2 0c03: 1002:73a6
0e:00.3 0c80: 1002:73a4
Создал файл /etc/modprobe.d/vfio.conf с содержимым:
options vfio-pci ids=1002:73bf,1002:ab28,1002:73a6,1002:73a4 disable_vga=1
Черным списком поместил radeon:
blacklist radeon
Убедился, что гость настроен так:
machine: q35
bios: OVMF
В GUI добавил PCIe устройство 0000:0e:00.0, выбрав все функции, primary GPU, ROM-Bar и PCI-Express.
Шаг 7: Попытался установить Windows 10 Pro, но драйвер не видит устройство. В диспетчере устройств видеокарты отображаются, но как неизвестные устройства.
В чём я что-то упускаю в настройке?
Шаг 1: Поскольку не был уверен, использую ли grub или systemd-boot, изменил оба файла — /etc/default/grub и /etc/kernel/cmdline:
Изменения в /etc/default/grub:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"
GRUB_CMDLINE_LINUX="root=ZFS=rpool/ROOT/pve-1 boot=zfs"
Изменения в /etc/kernel/cmdline:
root=ZFS=rpool/ROOT/pve-1 boot=zfs quiet amd_iommu=on iommu=pt
После изменений выполнил update-grub и proxmox-boot-tool refresh.
Шаг 2: Проверил, что IOMMU включён:
root@beatrice:~# dmesg | grep -e DMAR -e IOMMU
[ 1.239448] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported
[ 1.241134] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
[ 1.241834] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank).
[ 5.680671] AMD-Vi: AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
Шаг 3: Изменил /etc/modules, добавив:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
Шаг 4: Проверил перенаправление прерываний IOMMU:
root@beatrice:~# dmesg | grep 'remapping'
[ 1.241139] AMD-Vi: Interrupt remapping enabled
Шаг 5: Проверил изоляцию IOMMU:
root@beatrice:~# find /sys/kernel/iommu_groups/ -type l
... (список групп и устройств)
Шаг 6: Нашёл device и vendor id:
root@beatrice:~# lspci -n -s 0e:00
0e:00.0 0300: 1002:73bf (rev c0)
0e:00.1 0403: 1002:ab28
0e:00.2 0c03: 1002:73a6
0e:00.3 0c80: 1002:73a4
Создал файл /etc/modprobe.d/vfio.conf с содержимым:
options vfio-pci ids=1002:73bf,1002:ab28,1002:73a6,1002:73a4 disable_vga=1
Черным списком поместил radeon:
blacklist radeon
Убедился, что гость настроен так:
machine: q35
bios: OVMF
В GUI добавил PCIe устройство 0000:0e:00.0, выбрав все функции, primary GPU, ROM-Bar и PCI-Express.
Шаг 7: Попытался установить Windows 10 Pro, но драйвер не видит устройство. В диспетчере устройств видеокарты отображаются, но как неизвестные устройства.
В чём я что-то упускаю в настройке?

