Skip to content

Instantly share code, notes, and snippets.

@vadimstasiev
Last active June 16, 2025 14:13
Show Gist options
  • Save vadimstasiev/fee3decb3d397ab806f46e9c6c6da82c to your computer and use it in GitHub Desktop.
Save vadimstasiev/fee3decb3d397ab806f46e9c6c6da82c to your computer and use it in GitHub Desktop.
ProxMox - Enable IOMMU using systemd

ProxMox - Enable IOMMU using systemd

You found that you are using systemd, adding bits to GRUB will not work. Instead, follow these steps:

Edit the kernel command line

Open the /etc/kernel/cmdline file for editing:

nano /etc/kernel/cmdline

Add the following line for AMD CPUs:

root=ZFS=rpool/ROOT/pve-1 boot=zfs amd_iommu=on iommu=pt pcie_acs_override=downstream,multifunction

note: For intel, just replace amd with intel, like so: intel_iommu=on

Refresh the boot tool

After editing the /etc/kernel/cmdline file, refresh the boot tool by running:

proxmox-boot-tool refresh

With these steps, you should have successfully enabled IOMMU and ACS patch using systemd for your Proxmox installation.

@sanchez1337
Copy link

If anyone wants to make sure if systemd is indeed used, check Proxmox VE Administration Guide

@DSDV
Copy link

DSDV commented Mar 29, 2024

i think amd dont has "on" for amd_iommu=
https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html?highlight=amd_iommu

amd_iommu= [HW,X86-64]
Pass parameters to the AMD IOMMU driver in the system.
Possible values are:
fullflush - Deprecated, equivalent to iommu.strict=1
off - do not initialize any AMD IOMMU found in
the system
force_isolation - Force device isolation for all
devices. The IOMMU driver is not
allowed anymore to lift isolation
requirements as needed. This option
does not override iommu=pt
force_enable - Force enable the IOMMU on platforms known
to be buggy with IOMMU enabled. Use this
option with care.
pgtbl_v1 - Use v1 page table for DMA-API (Default).
pgtbl_v2 - Use v2 page table for DMA-API.
irtcachedis - Disable Interrupt Remapping Table (IRT) caching.

"on" is a intel thing.

Also the Proxmox Wiki Mentions:
https://pve.proxmox.com/wiki/PCI(e)_Passthrough#_general_requirements

For AMD CPUs it should be enabled automatically.

so i guess for AMD iommu=pt is enough (:

@AbaChan01
Copy link

AbaChan01 commented Jun 16, 2025

So, my fs is ext4.
i'm guessing that

root=EXT4=rpool/ROOT/pve-1 boot=ext4 intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction

should do the trick for me, no?

and my cmdline file is totally empty, btw

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment