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.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!