Latest from Proxmox: with
Latest Patched Kernel Releases:
This project aims to provide an easy way to build kernels for Proxmox VE with a particular set of patches.
At the moment, these are the patches applied during build:
Device is ineligible for IOMMU domain attach due to platform RMRR requirement. Contact your platform vendor.
message when trying to passthrough certain PCIe devices to a VM.There are two options:
Trigger the Build pve kernel (in container) workflow.
This workflow will build a new kernel with the current set of patches applied and produce artifacts that can be downloaded. It will run on a 2-core VM in GitHub and it will take between 2h30m and 3h to complete.
Build it locally
Use the build.sh script to build the kernel locally with the current set of patches applied. Because you are building everything locally, you can customize the set of patches you want before building.
In all cases, kernel builds are done using docker to contain the dependencies and make cleanup easier.
Regardless of how you built the kernel, you'll end up with a few of .deb files. To install them you need to:
*.deb
s packages to your machine
pve-kernel-<version>-pve-relaxablermrr_<version>_amd64.deb
file.dpkg -i *.deb
in the folder where you downloaded the debsuname -r
shows a version
ending with -pve-relaxablermrr
By default, after the kernel is installed, the patch will be inactive (i.e. the kernel will
behave like no patch was applied). To activate it you have to add relax_rmrr
to the intel_iommu
option on your Linux boot args.
In most distros (including Proxmox) you do this by:
/etc/default/grub
(e.g. using nano /etc/default/grub
)Editing the GRUB_CMDLINE_LINUX_DEFAULT
to include the option:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt intremap=no_x2apic_optout"
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on,relax_rmrr iommu=pt intremap=no_x2apic_optout"
update-grub
To verify if the the patch is active execute dmesg | grep 'Intel-IOMMU'
after reboot.
You should see a result similar to this:
root@sandbox:~# dmesg | grep 'Intel-IOMMU'
[ 0.050195] DMAR: Intel-IOMMU: assuming all RMRRs are relaxable. This can lead to instability or data loss
root@sandbox:~#