[SOLVED] Trouble enabling IOMMU on Asus WS C422 with Xeon W2145 CPU

kristols

New Member
Jul 13, 2022
2
0
1
Greetings from a newbie in Norway!

I'm having a hard time enabling PCIe passthrough on my ASUS WS C422 motherboard with a W2145 CPU. I've followed the steps in the guide here https://pve.proxmox.com/wiki/Pci_passthrough , but no dice.

VT-D is enabled in the BIOS.

When I run:

dmesg | grep -e DMAR -e IOMMU

I get:

Bash:
[    0.007667] ACPI: DMAR 0x000000004BD14000 000108 (v01 ALASKA A M I    00000001 INTL 20091013)
[    0.007703] ACPI: Reserving DMAR table memory at [mem 0x4bd14000-0x4bd14107]
[    0.211044] DMAR: Host address width 46
[    0.211046] DMAR: DRHD base: 0x000000b5ffc000 flags: 0x0
[    0.211050] DMAR: dmar0: reg_base_addr b5ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.211053] DMAR: DRHD base: 0x000000d8ffc000 flags: 0x0
[    0.211056] DMAR: dmar1: reg_base_addr d8ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.211059] DMAR: DRHD base: 0x000000fbffc000 flags: 0x0
[    0.211061] DMAR: dmar2: reg_base_addr fbffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.211064] DMAR: DRHD base: 0x00000092ffc000 flags: 0x1
[    0.211067] DMAR: dmar3: reg_base_addr 92ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.211069] DMAR: RMRR base: 0x0000004d519000 end: 0x0000004d762fff
[    0.211071] DMAR: ATSR flags: 0x0
[    0.211073] DMAR-IR: IOAPIC id 12 under DRHD base  0xfbffc000 IOMMU 2
[    0.211075] DMAR-IR: IOAPIC id 11 under DRHD base  0xd8ffc000 IOMMU 1
[    0.211076] DMAR-IR: IOAPIC id 10 under DRHD base  0xb5ffc000 IOMMU 0
[    0.211078] DMAR-IR: IOAPIC id 8 under DRHD base  0x92ffc000 IOMMU 3
[    0.211079] DMAR-IR: IOAPIC id 9 under DRHD base  0x92ffc000 IOMMU 3
[    0.211081] DMAR-IR: HPET id 0 under DRHD base 0x92ffc000
[    0.211082] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    0.211965] DMAR-IR: Enabled IRQ remapping in x2apic mode

As far as I can tell, there is no clear evidence that IOMMU is enabled, and working..?

Executing find /sys/kernel/iommu_groups/ -type l does not return anything, so its clearly not working.

What I've tried so far:

1. Disabling and re-enabling VT-d in BIOS.
2. Resetting the BIOS to defaults.
3. Upgrading the BIOS to the latest version.
4. Downgrading to a previous BIOS build.
5. Tried different grub arguments, as suggested in other posts, but to no avail.

Any hints to what I might try next? Any help is much appreciated :)

All the best,

K
 
OK - I'm really a n00b at this it seems!

All this time I was thinking Proxmox loaded via Grub, but as it turns out, it uses the systemd boot. Grub actually warns about this.. making the correct changes to /etc/kernel/cmdline made all the difference!

Bash:
[    0.007175] ACPI: DMAR 0x000000004BD14000 000108 (v01 ALASKA A M I    00000001 INTL 20091013)
[    0.007206] ACPI: Reserving DMAR table memory at [mem 0x4bd14000-0x4bd14107]
[    0.080147] DMAR: IOMMU enabled
[    0.210265] DMAR: Host address width 46
[    0.210266] DMAR: DRHD base: 0x000000b5ffc000 flags: 0x0
[    0.210270] DMAR: dmar0: reg_base_addr b5ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.210272] DMAR: DRHD base: 0x000000d8ffc000 flags: 0x0
[    0.210274] DMAR: dmar1: reg_base_addr d8ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.210276] DMAR: DRHD base: 0x000000fbffc000 flags: 0x0
[    0.210278] DMAR: dmar2: reg_base_addr fbffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.210279] DMAR: DRHD base: 0x00000092ffc000 flags: 0x1
[    0.210282] DMAR: dmar3: reg_base_addr 92ffc000 ver 1:0 cap 8d2078c106f0466 ecap f020df
[    0.210284] DMAR: RMRR base: 0x0000004d519000 end: 0x0000004d762fff
[    0.210285] DMAR: ATSR flags: 0x0
[    0.210287] DMAR-IR: IOAPIC id 12 under DRHD base  0xfbffc000 IOMMU 2
[    0.210288] DMAR-IR: IOAPIC id 11 under DRHD base  0xd8ffc000 IOMMU 1
[    0.210289] DMAR-IR: IOAPIC id 10 under DRHD base  0xb5ffc000 IOMMU 0
[    0.210290] DMAR-IR: IOAPIC id 8 under DRHD base  0x92ffc000 IOMMU 3
[    0.210291] DMAR-IR: IOAPIC id 9 under DRHD base  0x92ffc000 IOMMU 3
[    0.210291] DMAR-IR: HPET id 0 under DRHD base 0x92ffc000
[    0.210292] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[    0.211173] DMAR-IR: Enabled IRQ remapping in x2apic mode
[    0.437543] DMAR: No SATC found
[    0.437547] DMAR: dmar2: Using Queued invalidation
[    0.437549] DMAR: dmar1: Using Queued invalidation
[    0.437551] DMAR: dmar0: Using Queued invalidation
[    0.437553] DMAR: dmar3: Using Queued invalidation
[    0.448467] DMAR: Intel(R) Virtualization Technology for Directed I/O


Anyway! If you are a n00b, and are tearing all your hair out trying to solve this: check what bootloader you're using!
 

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!