GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt i915.enable_gvt=1"pcie_acs_override=downstream,multifunction.video=efifb:off video=vesa:off are generally redundant now, vfio_iommu_type1.allow_unsafe_interrupts=1 is only required if there are issues but can also create some, and kvm.ignore_msrs=1 is only necessary if your logs get spammed with error messages.I would assume you use Grub bc you are using LVM as your storage manager? You said shortened command line? What is that?I've used split GPU on 8th and 10th Gen with I915 VT-G and it's pretty straight forward.
This is a pretty good guide.
https://3os.org/infrastructure/proxmox/gpu-passthrough/igpu-split-passthrough/
However, I only needed to use a shortened GRUB command line to get it to work:
It accidentally posted before I'd finished typing it, and have edited the post to give more detail on why I use the shortened command line.I would assume you use Grub bc you are using LVM as your storage manager? You said shortened command line? What is that?
root=ZFS=rpool/ROOT/pve-1 boot=zfs intel_iommu=on iommu=pt i915.enable_gvt=1TheI am using this in my cmdline: quiet intel_iommu=on i915.enable_gvt=1 iommu=pt pcie_acs_override=downstream,multifunction
I was told that I needed to use the pcie override, so everything was in its own IOMMU group. I do not know if this is correct or not.
pcie_acs_override option is essentially a kernel patch that makes it appear as if the devices are in their own separate IOMMU group, however they are still physically linked.pcie_acs_override option as it is only introducing something that can cause potential additional instability.for g in $(find /sys/kernel/iommu_groups/* -maxdepth 0 -type d | sort -V); do echo "IOMMU Group ${g##*/}:"; for d in $g/devices/*; do echo -e "\t$(lspci -nns ${d##*/})"; done; done; shows that my iGPU (UHD Graphics 630), dGPU (T1000 8GB), and PCIe4 NVMe drive are naturally in their own IOMMU groups, my network controller (ConnectX-4 Lx) is in a shared group with a PCI bridge.IOMMU Group 0:
00:02.0 VGA compatible controller [0300]: Intel Corporation CometLake-S GT2 [UHD Graphics 630] [8086:9bc8] (rev 03)
IOMMU Group 1:
00:00.0 Host bridge [0600]: Intel Corporation Comet Lake-S 6c Host Bridge/DRAM Controller [8086:9b53] (rev 03)
IOMMU Group 2:
00:01.0 PCI bridge [0604]: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) [8086:1901] (rev 03)
01:00.0 Ethernet controller [0200]: Mellanox Technologies MT27710 Family [ConnectX-4 Lx] [15b3:1015]
IOMMU Group 3:
00:14.0 USB controller [0c03]: Intel Corporation Tiger Lake-H USB 3.2 Gen 2x1 xHCI Host Controller [8086:43ed] (rev 11)
00:14.2 RAM memory [0500]: Intel Corporation Tiger Lake-H Shared SRAM [8086:43ef] (rev 11)
IOMMU Group 4:
00:15.0 Serial bus controller [0c80]: Intel Corporation Tiger Lake-H Serial IO I2C Controller #0 [8086:43e8] (rev 11)
IOMMU Group 5:
00:16.0 Communication controller [0780]: Intel Corporation Tiger Lake-H Management Engine Interface [8086:43e0] (rev 11)
IOMMU Group 6:
00:17.0 SATA controller [0106]: Intel Corporation Device [8086:43d2] (rev 11)
IOMMU Group 7:
00:1b.0 PCI bridge [0604]: Intel Corporation Device [8086:43c4] (rev 11)
IOMMU Group 8:
00:1c.0 PCI bridge [0604]: Intel Corporation Tiger Lake-H PCI Express Root Port #5 [8086:43bc] (rev 11)
IOMMU Group 9:
00:1d.0 PCI bridge [0604]: Intel Corporation Tiger Lake-H PCI Express Root Port #9 [8086:43b0] (rev 11)
IOMMU Group 10:
00:1f.0 ISA bridge [0601]: Intel Corporation B560 LPC/eSPI Controller [8086:4387] (rev 11)
00:1f.3 Audio device [0403]: Intel Corporation Device [8086:f0c8] (rev 11)
00:1f.4 SMBus [0c05]: Intel Corporation Tiger Lake-H SMBus Controller [8086:43a3] (rev 11)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Tiger Lake-H SPI Controller [8086:43a4] (rev 11)
00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (14) I219-V [8086:15fa] (rev 11)
IOMMU Group 11:
02:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117GL [T1000 8GB] [10de:1ff0] (rev a1)
02:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:10fa] (rev a1)
IOMMU Group 12:
04:00.0 Non-Volatile memory controller [0108]: Phison Electronics Corporation PS5021-E21 PCIe4 NVMe Controller (DRAM-less) [1987:5021] (rev 01)
pcie_acs_override option. Given I just use the dGPU for Ai detection in Synology Surveillance Station it doesn't need the full 16x PCIe 3.0 bandwidth of the primary slot.pcie_acs_override option and play around with any cards that you want to pass through in different slots to see if you can get them on their own and avoid having to use the option.i915 0000:00:10.0: [drm] *ERROR* Failed to disable SAGV (-110) error on boot as well. I just ignore it.Found something rather interesting and not sure why. Do you have vfio_mdev in your modules config file? If not add it, run update-initramfs -u -k all and reboot your PVE. Then go back and add the default monitor back to your mediated vm. The console works for me, and the GPU is still mediated. Not sure why but it is.
modprobe vfio-mdev
modprobe: FATAL: Module vfio-mdev not found in directory /lib/modules/6.8.12-5-pve
We use essential cookies to make this site work, and optional cookies to enhance your experience.