Proxmox 6.2-4 TASK ERROR: IOMMU not present (Solved)

Alright, I need an adult.

I’m trying to pass a sas card and an Intel nic to a vm in proxmox, aka pcie passthrough. I’ve gotten this to work on an old supermicro mobo but I’d like to deploy a more pedestrian solution to a remote location.

I digress, the motherboard is ASRock H97M Pro4 and the cpu is a i7 4790s, both of which support VT-d.

I have enable VT-d and Virtualization support in the bios, and I have enabled intel_iommu=on in grub and preformed an update-grub with a reboot.

And still I get “TASK ERROR: IOMMU not present” when starting the VM.

I didn’t have to do any tricks with the server grade gear, why is this not working? Ideas?


First thing, off the top o’ me head, why not just use ZFS and create a vdisk, and just make a tap with the NIC and only assign said VM to it? That’s what I do and works well enough for me.

As for why, I think virtualization will work, but I’m not sure that H97 chipsets regularly had IOMMU in any manageable form for an admin. But this guy got VGA passthrough going, so my bet is probably on hitting that CSM support option on if it isn’t.


Thanks for your fast reply, it encouraged me to continue searching. Also great article find.

I was updating iommu on GRUB but was booting ZFS. I did that on two different motherboards too. Man I am dense.
So we can label this solved.

Thanks again,!

1 Like

@chromefinch how did you set the cmdline file to have IOMMU working correctly?
Thank you!

I think the issue is you’re using grub to boot to zfs to then boot proxmox, so you want to update the iommu status in the 2nd boot. #bestguess
I plan on using a hardware raid 1 in the future (two m.2 ssd’s in one 2.5 adapter). I’m not convinced removing one of the zfs drives will result in a boot, I’d test both, one at a time.

nano /etc/kernel/cmdline
add this to the end of the line:
GRUB_CMDLINE_LINUX_DEFAULT=“quiet intel_iommu=on”
pve-efiboot-tool refresh

Thank you very very very much!!! you’ve solved my problem!! the right syntax is add “intel_iommu=on” at the end of /etc/kernel/cmdline
that’s because I’m booting as ZFS as you told me.
Thank you again!!! :smiley:

1 Like

Yeah man! That’s great!
Glad I could help,
Finish our your portfolio! Hang out a while, it’s a pretty cool forum.

Hi all,

Just joined the forum, I hope that resurrecting an old thread as my first act doesn’t make me too unpopular.

I have Proxmox installed on my second hand Dell R710 and I’m trying to install TrueNAS as a VM, as per Techno Tim’s “How to Install and Virtualize FreeNAS with Proxmox” video on YouTube.

When I installed Proxmox I chose the ZFS (RAID-Z1) option, so I think that means I’m booting from ZFS.

The video recommends passing my LSI controller to the VM, which I have done, but when I try to start the VM I get the “IOMMU not present” error

I have attempted to implement the solutions in this thread by editing the cmdline file under /etc/kernel, but I still get the same error.

My R710 has 2x Xeon 5650s, which according to everything I’ve read should support virtualization. I have ensured that Intel Virtualization is enabled in the Processor section of the BIOS, and my BIOS version is 6.6.0.

I’m not an expert at any of this, just a geek doing mad science in his homelab, so if anyone could point me in the right direction I would appreciate it as I am currently out of ideas.

The R710 is old enough you might be booting via BIOS rather then via UEFI. So you may have to edit the grub config rather than the kernel cmdline file.

See this:

And this:

1 Like

Thank you for your reply.

I followed an article on itsfoss to check whether I’m booting BIOS or UEFI, and I appear to be booting from UEFI. I did set UEFI in the server’s settings and I have a file called ‘efi’ under /sys/firmware

I have discovered since my last post that whilst my R710 is stamped as a version 2, it has an MD99X motherboard. which seems to be an unusual model, as it is not listed anywhere that I can find. It isn’t mentioned at all on r/homelab’s wiki article on the R710, and whilst I can find a few for sale online, I can’t seem to find a spec sheet.

If I could find some docs on the mobo then I could at least know whether or not it supports IOMMU and if I should therefore keep trying…

In any case, thanks for the advice. As frustrating as this issue is, I am learning a lot more about linux whilst trying to solve it.

Make sure you are the newest BIOS.

Also make sure that anything labeled SR_IOVor has that in the name is enabled in the BIOS settings.