PCI Passthrough - IOMMU not enabling

edge69

New Member
Jan 9, 2024
5
0
1
Hi,
V new to Proxmox so please don't shoot me down!

I've installed Proxmox on an old motherboard and processor, and cannot seem to get IOMMU to be enabled/recognised as enabled in Proxmox.

My motherboard: MSI Unify Z490 WiFi
My processor: Intel Core i5-10600k

Both the motherboard and the processor support VT-x, VT-d and SR-IOV.
I have enabled all of these in the bios (and under the VT-d enabling - IOMMU is enabled also).

I'm on the latest releast of Proxmox - booting using grub, and the /etc/default/grub file has been updated as per the proxmox manual to include iommu=on and iommu=pt

Yet still when in the Proxmox environment, and trying to add Hardware to a VM - it says that IOMMU is not detected/enabled.

I've been over and over through the settings etc - and nothing works.

What am I missing / doing wrong?

Thanks
 
Hi,
Output as follows;

BOOT_IMAGE=/boot/vmlinuz-6.5.11-7-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
 
BOOT_IMAGE=/boot/vmlinuz-6.5.11-7-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
Then VT-d is not complete enabled in the motherboard BIOS or the motherboard BIOS does not enable it properly (the chipset and CPU do support it) or the motherboard physical layout/build does not support IOMMU consistently according to the Linux kernel.
What is the output of journalctl -b 0 | grep -i iommu?
 
Hi,
Thanks for replying again - do appreciate the time and assistance.

Output from journalctl -b 0 | grep -i iommu below;

Jan 09 20:02:33 pve kernel: Command line: BOOT_IMAGE=/boot/vmlinuz-6.5.11-7-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
Jan 09 20:02:33 pve kernel: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.5.11-7-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
Jan 09 20:02:33 pve kernel: DMAR: IOMMU enabled
Jan 09 20:02:33 pve kernel: DMAR-IR: IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 0
Jan 09 20:02:33 pve kernel: iommu: Default domain type: Passthrough (set via kernel command line)
Jan 09 20:02:33 pve kernel: pci 0000:00:00.0: Adding to iommu group 0
Jan 09 20:02:33 pve kernel: pci 0000:00:01.0: Adding to iommu group 1
Jan 09 20:02:33 pve kernel: pci 0000:00:08.0: Adding to iommu group 2
Jan 09 20:02:33 pve kernel: pci 0000:00:12.0: Adding to iommu group 3
Jan 09 20:02:33 pve kernel: pci 0000:00:14.0: Adding to iommu group 4
Jan 09 20:02:33 pve kernel: pci 0000:00:14.2: Adding to iommu group 4
Jan 09 20:02:33 pve kernel: pci 0000:00:14.3: Adding to iommu group 5
Jan 09 20:02:33 pve kernel: pci 0000:00:16.0: Adding to iommu group 6
Jan 09 20:02:33 pve kernel: pci 0000:00:17.0: Adding to iommu group 7
Jan 09 20:02:33 pve kernel: pci 0000:00:1b.0: Adding to iommu group 8
Jan 09 20:02:33 pve kernel: pci 0000:00:1b.4: Adding to iommu group 9
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.0: Adding to iommu group 10
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.5: Adding to iommu group 11
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.6: Adding to iommu group 12
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.7: Adding to iommu group 13
Jan 09 20:02:33 pve kernel: pci 0000:00:1d.0: Adding to iommu group 14
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.0: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.3: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.4: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.5: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:01:00.0: Adding to iommu group 1
Jan 09 20:02:33 pve kernel: pci 0000:01:00.1: Adding to iommu group 1
Jan 09 20:02:33 pve kernel: pci 0000:02:00.0: Adding to iommu group 16
Jan 09 20:02:33 pve kernel: pci 0000:03:00.0: Adding to iommu group 17
Jan 09 20:02:33 pve kernel: pci 0000:04:00.0: Adding to iommu group 18
Jan 09 20:02:33 pve kernel: pci 0000:05:00.0: Adding to iommu group 19
Jan 09 20:02:33 pve kernel: pci 0000:06:00.0: Adding to iommu group 20
Jan 09 20:02:33 pve kernel: pci 0000:07:00.0: Adding to iommu group 21
Jan 09 20:02:33 pve kernel: pci 0000:08:00.0: Adding to iommu group 22
 
Jan 09 20:02:33 pve kernel: Command line: BOOT_IMAGE=/boot/vmlinuz-6.5.11-7-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
Jan 09 20:02:33 pve kernel: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.5.11-7-pve root=/dev/mapper/pve-root ro quiet intel_iommu=on iommu=pt
Jan 09 20:02:33 pve kernel: DMAR: IOMMU enabled
Jan 09 20:02:33 pve kernel: DMAR-IR: IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 0
Jan 09 20:02:33 pve kernel: iommu: Default domain type: Passthrough (set via kernel command line)
Jan 09 20:02:33 pve kernel: pci 0000:00:00.0: Adding to iommu group 0
Jan 09 20:02:33 pve kernel: pci 0000:00:01.0: Adding to iommu group 1
Jan 09 20:02:33 pve kernel: pci 0000:00:08.0: Adding to iommu group 2
Jan 09 20:02:33 pve kernel: pci 0000:00:12.0: Adding to iommu group 3
Jan 09 20:02:33 pve kernel: pci 0000:00:14.0: Adding to iommu group 4
Jan 09 20:02:33 pve kernel: pci 0000:00:14.2: Adding to iommu group 4
Jan 09 20:02:33 pve kernel: pci 0000:00:14.3: Adding to iommu group 5
Jan 09 20:02:33 pve kernel: pci 0000:00:16.0: Adding to iommu group 6
Jan 09 20:02:33 pve kernel: pci 0000:00:17.0: Adding to iommu group 7
Jan 09 20:02:33 pve kernel: pci 0000:00:1b.0: Adding to iommu group 8
Jan 09 20:02:33 pve kernel: pci 0000:00:1b.4: Adding to iommu group 9
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.0: Adding to iommu group 10
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.5: Adding to iommu group 11
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.6: Adding to iommu group 12
Jan 09 20:02:33 pve kernel: pci 0000:00:1c.7: Adding to iommu group 13
Jan 09 20:02:33 pve kernel: pci 0000:00:1d.0: Adding to iommu group 14
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.0: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.3: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.4: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:00:1f.5: Adding to iommu group 15
Jan 09 20:02:33 pve kernel: pci 0000:01:00.0: Adding to iommu group 1
Jan 09 20:02:33 pve kernel: pci 0000:01:00.1: Adding to iommu group 1
Jan 09 20:02:33 pve kernel: pci 0000:02:00.0: Adding to iommu group 16
Jan 09 20:02:33 pve kernel: pci 0000:03:00.0: Adding to iommu group 17
Jan 09 20:02:33 pve kernel: pci 0000:04:00.0: Adding to iommu group 18
Jan 09 20:02:33 pve kernel: pci 0000:05:00.0: Adding to iommu group 19
Jan 09 20:02:33 pve kernel: pci 0000:06:00.0: Adding to iommu group 20
Jan 09 20:02:33 pve kernel: pci 0000:07:00.0: Adding to iommu group 21
Jan 09 20:02:33 pve kernel: pci 0000:08:00.0: Adding to iommu group 22
IOMMU appears to be enabled just fine. I cannot explain why you would get a message that it is not nebaled. Can you show again where you get the message that it is not enabled? Did you follow the passthrough preparation step from the manual: https://pve.proxmox.com/pve-docs/pve-admin-guide.html#qm_pci_passthrough ?
 
Hi,

I have no idea why, as I didn't change a thing after this - but now it is working!
Next pcie issue upcoming....ha


Thanks for your help.
Please close this thread.