DO: If the VM will not boot correctly, Windows shows Code 43, the physical display stays black, or the iGPU is unreliable, stay on the second PC and use SSH.
First collect diagnostics:
qm status {{VM_ID}}
qm config {{VM_ID}}
lspci -nnk -s {{IGPU_PCI}}
journalctl -b | grep -Ei 'vfio|IOMMU|DMAR|i915'
Optional VFIO/i915 fallback
Use this only after the normal legacy-IGD configuration has failed or the iGPU project guidance indicates the host i915 driver is preventing reliable output/resolution. This will usually remove the Proxmox host's local video console after reboot.
qm stop {{VM_ID}}
cat >/etc/modules-load.d/p2v-igd-vfio.conf <<'EOF'
vfio
vfio_iommu_type1
vfio_pci
EOF
cat >/etc/modprobe.d/p2v-igd-vfio.conf <<'EOF'
blacklist i915
options vfio-pci ids={{IGPU_PCI_ID}}
EOF
update-initramfs -u -k all
reboot
After Proxmox returns, reconnect with SSH and verify:
lspci -nnk -s {{IGPU_PCI}}
If you used the fallback, Kernel driver in use: vfio-pci is expected. Retry the VM.
Restore the original VM and host iGPU
To return the VM to its pre-passthrough q35 configuration and remove the optional host-driver fallback:
qm stop {{VM_ID}}
cp /root/{{VM_ID}}.conf.before-igd /etc/pve/qemu-server/{{VM_ID}}.conf
rm -f /etc/modprobe.d/p2v-igd-vfio.conf
rm -f /etc/modules-load.d/p2v-igd-vfio.conf
update-initramfs -u -k all
reboot
After reboot, verify the original VM configuration is restored. If you used the VFIO fallback, lspci -nnk -s {{IGPU_PCI}} should show i915 again when the host reclaims the iGPU.
STOP CHECK: Either the physical-console passthrough works, or the original q35 VM configuration and normal Proxmox iGPU ownership have been restored.
SAVE STATE: Export the final saved state on the second PC.