iGPU Passthrough not working

clanktron

New Member
Dec 23, 2021
9
0
1
24
I followed this tutorial to passthrough my igpu to a standard Ubuntu VM but it refuses to boot and I get the following error:
Code:
kvm: -device vfio-pci,host=0000:00:02.0,id=hostpci0,bus=pci.0,addr=0x10,x-vga=on: vfio 0000:00:02.0: error getting device from group 1: Cannot allocate memory
Verify all devices in group 1 are bound to vfio-<bus> or pci-stub and not already in use

Output of lspci -v -s 00:02:
Code:
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) (prog-if 00 [VGA controller])
        DeviceName:  Onboard IGD
        Subsystem: Hewlett-Packard Company 2nd Generation Core Processor Family Integrated Graphics Controller
        Flags: fast devsel, IRQ 16, IOMMU group 1
        Memory at fe000000 (64-bit, non-prefetchable) [size=4M]
        Memory at d0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at f000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: [90] MSI: Enable- Count=1/1 Maskable- 64bit-
        Capabilities: [d0] Power Management version 2
        Capabilities: [a4] PCI Advanced Features
        Kernel driver in use: vfio-pci
        Kernel modules: i915

Output of dmesg | grep -e DMAR -e IOMMU:
Code:
[    0.000000] Warning: PCIe ACS overrides enabled; This may allow non-IOMMU protected peer-to-peer DMA
[    0.000000] ACPI: DMAR 0x00000000CAC213F0 0000E8 (v01 ALASKA A M I    00000001 INTL 00000001)
[    0.000000] ACPI: Reserving DMAR table memory at [mem 0xcac213f0-0xcac214d7]
[    0.000000] DMAR: IOMMU enabled
[    0.000000] DMAR: Host address width 36
[    0.000000] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[    0.000000] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap c0000020e60262 ecap f0101a
[    0.000000] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[    0.000000] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap c9008020660262 ecap f0105a
[    0.000000] DMAR: RMRR base: 0x000000cac23000 end: 0x000000cac3ffff
[    0.000000] DMAR: RMRR base: 0x000000cb800000 end: 0x000000cf9fffff
[    0.000000] DMAR-IR: IOAPIC id 0 under DRHD base  0xfed91000 IOMMU 1
[    0.000000] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[    0.000000] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    0.000000] DMAR-IR: Enabled IRQ remapping in x2apic mode
[    0.144153] DMAR: No ATSR found
[    0.144154] DMAR: No SATC found
[    0.144156] DMAR: IOMMU feature pgsel_inv inconsistent
[    0.144157] DMAR: IOMMU feature pass_through inconsistent
[    0.144158] DMAR: dmar0: Using Queued invalidation
[    0.144164] DMAR: dmar1: Using Queued invalidation
[    0.286486] DMAR: Intel(R) Virtualization Technology for Directed I/O

When I connect a monitor to vga I don't get the proxmox console so I'm fairly certain its disabled for the host so not sure what the issue is. Any and all help is welcome. Computer is a HP Compaq Elite 8200 SFF with Intel Core i5-2400 CPU @ 3.10GHz. PVE Version: pve-manager/7.3-4/d69b70d4 (running kernel: 5.15.83-1-pve)

Edit: I should also mention I tried to disable the igpu in BIOS settings of the host machine but was unable to change from enabled to disabled since the section was greyed out.
 
Last edited: