You are not logged in.
Hey everyone
I've been trying to set up a virtual machine with pass-through for a couple of hours now but haven't been able to get output through the screen. I've been using the ArchWiki for the setup and everything seemed to be running smoothly until I tried to attach the PCI Device for a graphics card.
dmesg | grep -i -e DMAR -e IOMMU
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=7a2cdb89-46cd-4d5e-806b-359bbc343a20 rw loglevel=3 quiet amd_iommu=on iommu=pt vfio-pci.ids=1002:6810,1002:aab0
[ 0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=7a2cdb89-46cd-4d5e-806b-359bbc343a20 rw loglevel=3 quiet amd_iommu=on iommu=pt vfio-pci.ids=1002:6810,1002:aab0
[ 0.183758] iommu: Default domain type: Passthrough (set via kernel command line)
[ 0.300764] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported
[ 0.300825] pci 0000:00:01.0: Adding to iommu group 0
[ 0.300835] pci 0000:00:01.3: Adding to iommu group 1
[ 0.300848] pci 0000:00:02.0: Adding to iommu group 2
[ 0.300862] pci 0000:00:03.0: Adding to iommu group 3
[ 0.300873] pci 0000:00:03.1: Adding to iommu group 4
[ 0.300882] pci 0000:00:03.2: Adding to iommu group 5
[ 0.300895] pci 0000:00:04.0: Adding to iommu group 6
[ 0.300908] pci 0000:00:07.0: Adding to iommu group 7
[ 0.300918] pci 0000:00:07.1: Adding to iommu group 8
[ 0.300931] pci 0000:00:08.0: Adding to iommu group 9
[ 0.300940] pci 0000:00:08.1: Adding to iommu group 10
[ 0.300957] pci 0000:00:14.0: Adding to iommu group 11
[ 0.300967] pci 0000:00:14.3: Adding to iommu group 11
[ 0.301009] pci 0000:00:18.0: Adding to iommu group 12
[ 0.301018] pci 0000:00:18.1: Adding to iommu group 12
[ 0.301027] pci 0000:00:18.2: Adding to iommu group 12
[ 0.301036] pci 0000:00:18.3: Adding to iommu group 12
[ 0.301045] pci 0000:00:18.4: Adding to iommu group 12
[ 0.301053] pci 0000:00:18.5: Adding to iommu group 12
[ 0.301063] pci 0000:00:18.6: Adding to iommu group 12
[ 0.301072] pci 0000:00:18.7: Adding to iommu group 12
[ 0.301094] pci 0000:01:00.0: Adding to iommu group 13
[ 0.301105] pci 0000:01:00.1: Adding to iommu group 13
[ 0.301115] pci 0000:01:00.2: Adding to iommu group 13
[ 0.301119] pci 0000:02:00.0: Adding to iommu group 13
[ 0.301122] pci 0000:02:02.0: Adding to iommu group 13
[ 0.301129] pci 0000:02:03.0: Adding to iommu group 13
[ 0.301133] pci 0000:02:04.0: Adding to iommu group 13
[ 0.301136] pci 0000:02:05.0: Adding to iommu group 13
[ 0.301140] pci 0000:02:06.0: Adding to iommu group 13
[ 0.301143] pci 0000:02:07.0: Adding to iommu group 13
[ 0.301147] pci 0000:03:00.0: Adding to iommu group 13
[ 0.301151] pci 0000:04:00.0: Adding to iommu group 13
[ 0.301177] pci 0000:0a:00.0: Adding to iommu group 14
[ 0.301189] pci 0000:0a:00.1: Adding to iommu group 14
[ 0.301213] pci 0000:0b:00.0: Adding to iommu group 15
[ 0.301224] pci 0000:0b:00.1: Adding to iommu group 15
[ 0.301235] pci 0000:0c:00.0: Adding to iommu group 16
[ 0.301246] pci 0000:0c:00.2: Adding to iommu group 17
[ 0.301256] pci 0000:0c:00.3: Adding to iommu group 18
[ 0.301266] pci 0000:0d:00.0: Adding to iommu group 19
[ 0.301276] pci 0000:0d:00.2: Adding to iommu group 20
[ 0.301287] pci 0000:0d:00.3: Adding to iommu group 21
[ 0.301672] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
[ 0.302084] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank).
[ 0.318299] AMD-Vi: AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>I ran the script that's suggested to check the IOMMU grouping and this is the graphic cards results:
IOMMU Group 14:
0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] [1002:67df] (rev ef)
0a:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] [1002:aaf0]
IOMMU Group 15:
0b:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Curacao XT / Trinidad XT [Radeon R7 370 / R9 270X/370X] [1002:6810]
0b:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Oland/Hainan/Cape Verde/Pitcairn HDMI Audio [Radeon HD 7000 Series] [1002:aab0]
IOMMU Group 16:Since the card I want to pass through is the 270X, I edited /etc/default/grub like so:
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet amd_iommu=on iommu=pt vfio-pci.ids=1002:6810,1002:aab0"And verified the configuration worked:
dmesg | grep -i vfio
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=7a2cdb89-46cd-4d5e-806b-359bbc343a20 rw loglevel=3 quiet amd_iommu=on iommu=pt vfio-pci.ids=1002:6810,1002:aab0
[ 0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=7a2cdb89-46cd-4d5e-806b-359bbc343a20 rw loglevel=3 quiet amd_iommu=on iommu=pt vfio-pci.ids=1002:6810,1002:aab0
[ 3.407480] VFIO - User Level meta-driver version: 0.3
[ 3.411718] vfio-pci 0000:0b:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=none
[ 3.427077] vfio_pci: add [1002:6810[ffffffff:ffffffff]] class 0x000000/00000000
[ 3.443794] vfio_pci: add [1002:aab0[ffffffff:ffffffff]] class 0x000000/00000000
[ 5.705924] vfio-pci 0000:0b:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=none
[ 129.113388] vfio-pci 0000:0b:00.0: enabling device (0000 -> 0003)
[ 129.113644] vfio-pci 0000:0b:00.0: vfio_ecap_init: hiding ecap 0x19@0x270
[ 129.113650] vfio-pci 0000:0b:00.0: vfio_ecap_init: hiding ecap 0x1b@0x2d0
[ 226.040280] vfio-pci 0000:0b:00.0: vfio_ecap_init: hiding ecap 0x19@0x270
[ 226.040287] vfio-pci 0000:0b:00.0: vfio_ecap_init: hiding ecap 0x1b@0x2d0
[ 1555.333394] vfio-pci 0000:0b:00.0: vfio_ecap_init: hiding ecap 0x19@0x270
[ 1555.333402] vfio-pci 0000:0b:00.0: vfio_ecap_init: hiding ecap 0x1b@0x2d0lspci -nnk -d 1002:6810
0b:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Curacao XT / Trinidad XT [Radeon R7 370 / R9 270X/370X] [1002:6810]
Subsystem: PC Partner Limited / Sapphire Technology Device [174b:e271]
Kernel driver in use: vfio-pci
Kernel modules: radeon, amdgpulspci -nnk -d 1002:aab0
0b:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Oland/Hainan/Cape Verde/Pitcairn HDMI Audio [Radeon HD 7000 Series] [1002:aab0]
Subsystem: PC Partner Limited / Sapphire Technology Device [174b:aab0]
Kernel driver in use: vfio-pci
Kernel modules: snd_hda_intelI installed windows 10 on the VM and everything went smoothly. But when I got to the point of adding the video card and booting, The monitor that's plugged to the VM doesn't go out of hibernation state and on the VM window I just get a black screen where its trying to boot.
Any thoughts?
As a sidenote: When I try to set the CPU to "host-passthrough", it instantly crashes the VM and tries to send me to recovery but crash-loops
Thanks before hand.
Last edited by aamm19 (2021-02-02 01:15:41)
Offline