While you're at it, why not include all the Intel graphics drivers?
EDIT: Maybe combine the sometimes out-of-date information from
that page with the newer(?)
PCI(e)_Passthrough Wiki page and the more up-to-date
Proxmox manual?
A consolidation of the old: [1] and new: [2] wiki entries and marking the old one somehow "deprecated" and
prominently link to the new one, as well as bringing the new one up-to-date and expanding it, would be really desirable!
This topic (PCIe-passthrough) comes up on a really frequent basis here in the forum and some users seem to only refer to the older wiki entry, that still mentions e.g.:
amd_iommu=on
, which is (in the meantime
?) not necessary, nor even a valid/existing parameter (
on
) at all (from the, in Proxmox, currently default 5.15 kernel docs: [3]):
Code:
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.
Things worth mentioning in the
old: [1] wiki entry:
amd_iommu=on
not valid/existing (anymore?).
dmesg | grep -e DMAR -e IOMMU
and: dmesg | grep 'remapping'
are split up, instead of simply: dmesg | grep -e DMAR -e IOMMU -e AMD-Vi
from the new one.
update-initramfs -u -k all
missing at all after adding the required modules to: /etc/modules
.
Things worth mentioning in the
new: [2] wiki entry:
- The GPU-driver-names for blacklisting are missing completely.
- Additionally, it should be mentioned in the wiki, that one might not need and/or want at all to blacklist all GPU-drivers, especially if it is intended to also add the Intel-driver-names too! This might lead to an unintended situation, if one would "blindly" copy-paste all entries for blacklisting from the wiki.
- On the other hand, it might be considered to not list the driver-names at all and instead guide the user how to look it up with:
lspci -k
or the already later mentioned: lspci -nnk
on their own; to prevent blindly copy-pasting at all.
- Mention of:
pcie_acs_override=
completely missing.
Things worth mentioning regarding
both entries:
- Again mention and describe the:
pcie_acs_override=
-option more detailed and what its possible parameters are, as well as its cons, as in: [4].
- Mention and explain the:
softdep
-option: [5] at all. (Especially for the commonly used/needed situation to have: vfio-pci
loaded before a specific driver/module.)
- Replace:
find /sys/kernel/iommu_groups/ -type l
with (or at least add extra):
Bash:
for d in /sys/kernel/iommu_groups/*/devices/*; do n=${d#*/iommu_groups/*}; n=${n%%/*}; printf 'IOMMU group %s ' "$n"; lspci -nns "${d##*/}"; done
since it is way more meaningful, not only for the user, but also for people who want to help them!
Maybe
@leesteken can add and/or change things to/on this list.
I want to emphasize again, despite the fact that I also listed things regarding the old wiki entry, in my humble opinion, it would really make sense to have only
one up-to-date wiki entry for this topic!
[1]
https://pve.proxmox.com/wiki/Pci_passthrough
[2]
https://pve.proxmox.com/wiki/PCI(e)_Passthrough
[3]
https://www.kernel.org/doc/html/v5.15/admin-guide/kernel-parameters.html
[4]
https://wiki.archlinux.org/title/PC...passing_the_IOMMU_groups_(ACS_override_patch)
[5]
https://manpages.debian.org/bullseye/kmod/modprobe.d.5.en.html