[SOLVED] PCI/GPU Passthrough Intel530 - Optiplex 7040 - Win10

gajer

New Member
Aug 26, 2024
4
2
3
Hello everyone.
I have a micro pc Opitplex 7040 with Intel i7-6700T and an integrated Intel 530 graphics card.

I have configured proxmox on GPU Passthrough according to many guides from this forum and the promox documentation itself.

There are 3 virtual machines on the server.

1. Windows10
2. Windows11
3. Ubuntu 21.04.1 LTS

And only one VM displays the image on the monitor. Ubuntu is passed through the GPU. I only run one machine at a time. Windows 10 and 11 do not display anything. I connected to the virtual machines remotely and installed the drivers, their work from the system is without errors.

nano /etc/default/grub
Code:
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on vfio-pci.ids=8086:1912 i915.enable_gvt=1 iommu=pt pcie_acs_override=downstream,multifunction video=efifb:off video=vesa:off vfio_iommu_type1.allow_unsafe_interrupts=1 kvm.ignore_msrs=1 modprobe.blacklist=radeon,nouveau,nvidia,nvidiafb,nvidia-gpu"
GRUB_CMDLINE_LINUX=""

update-grub
nano /etc/modules

Code:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
kvmgt

/etc/modprobe.d/vfio.conf
Code:
options vfio-pci ids=8086:1912,00:1f.3 disable_vga=1

Code:
root@pve:~# dmesg | grep -e DMAR -e IOMMU
[    0.000000] Warning: PCIe ACS overrides enabled; This may allow non-IOMMU protected peer-to-peer DMA
[    0.010672] ACPI: DMAR 0x00000000CF20B8F8 0000A8 (v01 INTEL  SKL      00000001 INTL 00000001)
[    0.010698] ACPI: Reserving DMAR table memory at [mem 0xcf20b8f8-0xcf20b99f]
[    0.030527] DMAR: IOMMU enabled
[    0.090757] DMAR: Host address width 39
[    0.090758] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[    0.090769] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap 1c0000c40660462 ecap 7e3ff0505e
[    0.090772] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[    0.090776] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap d2008c40660462 ecap f050da
[    0.090778] DMAR: RMRR base: 0x000000cf04c000 end: 0x000000cf06bfff
[    0.090780] DMAR: RMRR base: 0x000000d9800000 end: 0x000000dbffffff
[    0.090782] DMAR-IR: IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1
[    0.090783] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[    0.090785] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    0.092652] DMAR-IR: Enabled IRQ remapping in x2apic mode
[    0.338592] DMAR: No ATSR found
[    0.338594] DMAR: No SATC found
[    0.338595] DMAR: IOMMU feature fl1gp_support inconsistent
[    0.338596] DMAR: IOMMU feature pgsel_inv inconsistent
[    0.338597] DMAR: IOMMU feature nwfs inconsistent
[    0.338598] DMAR: IOMMU feature eafs inconsistent
[    0.338599] DMAR: IOMMU feature prs inconsistent
[    0.338600] DMAR: IOMMU feature nest inconsistent
[    0.338601] DMAR: IOMMU feature mts inconsistent
[    0.338602] DMAR: IOMMU feature sc_support inconsistent
[    0.338603] DMAR: IOMMU feature dev_iotlb_support inconsistent
[    0.338604] DMAR: dmar0: Using Queued invalidation
[    0.338608] DMAR: dmar1: Using Queued invalidation
[    0.339074] DMAR: Intel(R) Virtualization Technology for Directed I/O
[   57.767802] DMAR: DRHD: handling fault status reg 2
[   57.767807] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  156.743671] DMAR: DRHD: handling fault status reg 2
[  156.743676] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  165.435057] DMAR: DRHD: handling fault status reg 2
[  165.435062] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  351.882129] DMAR: DRHD: handling fault status reg 2
[  351.882134] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  356.565080] DMAR: DRHD: handling fault status reg 2
[  356.565085] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  488.322817] DMAR: DRHD: handling fault status reg 2
[  488.322822] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  495.055377] DMAR: DRHD: handling fault status reg 2
[  495.055382] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
[  508.788799] DMAR: DRHD: handling fault status reg 3
[  508.788804] DMAR: [DMA Read NO_PASID] Request device [00:02.0] fault addr 0xda021000 [fault reason 0x05] PTE Write access is not set
[  508.788814] DMAR: DRHD: handling fault status reg 3
[  508.788816] DMAR: [DMA Read NO_PASID] Request device [00:02.0] fault addr 0xda022000 [fault reason 0x05] PTE Write access is not set
[  508.788819] DMAR: DRHD: handling fault status reg 3
[  508.788821] DMAR: [DMA Read NO_PASID] Request device [00:02.0] fault addr 0xda022000 [fault reason 0x05] PTE Write access is not set
[  508.788823] DMAR: DRHD: handling fault status reg 3
[  625.223393] DMAR: DRHD: handling fault status reg 2
[  625.223396] DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear

nano /etc/modprobe.d/blacklist.conf
Code:
blacklist nouveau
blacklist nvidia
blacklist radeon
blacklist amdgpu
blacklist i915

nano /etc/pve/qemu-server/100.conf

Code:
agent: 1
args: -cpu host,kvm=off
bios: ovmf
boot: order=ide0;ide2;net0;ide1
cores: 1
cpu: host,hidden=1,flags=+pcid
efidisk0: local-lvm:vm-100-disk-0,efitype=4m,pre-enrolled-keys=1,size=4M
hostpci0: 0000:00:02,x-vga=1
ide0: local-lvm:vm-100-disk-1,size=32G
ide1: local:iso/virtio-win-0.1.262.iso,media=cdrom,size=708140K
machine: pc-q35-9.0 (tested 6.1, 8.1)
memory: 4096
meta: creation-qemu=8.1.5,ctime=1725181195
name: Windows10
net0: e1000=BC:24:11:92:09:4B,bridge=vmbr0,firewall=1
numa: 0
ostype: win10
scsihw: virtio-scsi-single
smbios1: uuid=2890f155-82f2-4939-8b13-7bdd4e77b39b
sockets: 4
vga: none
vmgenid: a2eee9b5-d7d1-4bed-9087-93fe772b61d0
 
  • Like
Reactions: _NIk_
Hi,
I'm trying to replicate your configuration for Intel iGPU passthrough, but each time I pass the ROM file, Proxmox crashes or the VM fails to initialize properly. Here's a logs:
Code:
Apr 22 22:22:48 pve kernel: DMAR: DRHD: handling fault status reg 3
Apr 22 22:22:48 pve kernel: DMAR: [DMA Write NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x02] Present bit in context entry is clear
Apr 22 22:22:49 pve kernel: vfio-pci 0000:00:02.0: resetting
Apr 22 22:22:49 pve kernel: vfio-pci 0000:00:02.0: reset done
Apr 22 22:22:49 pve kernel: vfio-pci 0000:00:02.0: resetting
Apr 22 22:22:49 pve kernel: vfio-pci 0000:00:02.0: reset done
Apr 22 22:22:49 pve pvedaemon[33143]: VM 800 started with PID 33154.
Apr 22 22:22:49 pve pvedaemon[1457]: <root@pam> end task UPID:pve:00008177:000552DF:6807FA98:qmstart:800:root@pam: OK
Apr 22 22:22:49 pve pvedaemon[1457]: <root@pam> starting task UPID:pve:000081CC:0005539D:6807FA99:vncproxy:800:root@pam:
Apr 22 22:22:49 pve pvedaemon[33228]: starting vnc proxy UPID:pve:000081CC:0005539D:6807FA99:vncproxy:800:root@pam:
Apr 22 22:22:50 pve qm[33230]: VM 800 qmp command failed - VM 800 qmp command 'set_password' failed - Could not set password
Apr 22 22:22:50 pve pvedaemon[33228]: Failed to run vncproxy.
Apr 22 22:22:50 pve pvedaemon[1457]: <root@pam> end task UPID:pve:000081CC:0005539D:6807FA99:vncproxy:800:root@pam: Failed to run vncproxy.

This only happens when the romfile= is set in the VM config.
Could you please share a working Proxmox VM config for Windows or Ubuntu with a passed-through Intel iGPU (HD 530 or similar) and a ROM file?
 
Last edited: