[SOLVED] Pci passthrough: No IOMMU detected

fcymk2

New Member
Sep 7, 2019
20
1
3
35
I installed proxmox on a debian buster mathine.
I add config from the wiki, `https://pve.proxmox.com/wiki/Pci_passthrough#Intel_CPU`
but Pci passthrough can't work
```
add pci devices:
No IOMMU detected, please activate it.See Documentation for further information.

```
I modify the `GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"`,

modify /etc/modules
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

add `options vfio_iommu_type1 allow_unsafe_interrupts=1` in /etc/modprobe.d/pcie.con

dmesg | grep -e DMAR -e IOMMU -e AMD-Vi
[ 0.027146] DMAR: IOMMU enabled

lsmod | grep kvm
kvm_intel 249856 0
kvm 655360 1 kvm_intel
irqbypass 16384 2 vfio_pci,kvm

Is there anything I missed? My Cpu is I5-7400
 

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
3,312
378
88
Check the BIOS/UEFI settings - sometimes IOMMU needs to be activated there (look for VT-d, ACS, ARI, virtualization,....)

also check the documentation of the mainboard and the chipset - this also needs support for IOMMU

I hope this helps!
 

Dark26

Member
Nov 27, 2017
141
8
23
43
Check the BIOS/UEFI settings - sometimes IOMMU needs to be activated there (look for VT-d, ACS, ARI, virtualization,....)

also check the documentation of the mainboard and the chipset - this also needs support for IOMMU

I hope this helps!
Check also your CPU. SOme ar not compatible ( pentium g3258 for example :( )
 

fcymk2

New Member
Sep 7, 2019
20
1
3
35
Check the BIOS/UEFI settings - sometimes IOMMU needs to be activated there (look for VT-d, ACS, ARI, virtualization,....)

also check the documentation of the mainboard and the chipset - this also needs support for IOMMU

I hope this helps!
I had open VT option in bios, and I test it use securable, vt is opened.

securable.jpg


mainboard and the chipset is H110, is this support IOMMU? Is there any way to test this?
```
dmidecode |grep -A16 "System Information$"
System Information
Manufacturer: TSINGHUA TONGFANG COMPUTER
Product Name: X850
Version:
Serial Number:
UUID:
Wake-up Type: Power Switch
SKU Number:
Family: JingRui

Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: 1D05870D
Product Name: H110-4S REV2.0
Version: Rev 1.01
Serial Number:
Asset Tag: Default string
```
 
Last edited:

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
3,312
378
88

fcymk2

New Member
Sep 7, 2019
20
1
3
35
I don't know securable - but anyways - the VT option in the bios might be related to vtx and not vt-d (the flag you need for IOMMU)
Check our reference documentation on PCI(e) passthrough and the requirements section - maybe it contains the necessary pointers:
https://pve.proxmox.com/pve-docs/chapter-qm.html#qm_pci_passthrough
My BIOS only have VT options @_@
I test by this https://stackoverflow.com/questions...ed-without-having-to-reboot-in-linux/11118147

```
sudo modprobe msr
sudo rdmsr 0x3a
Values 3 and 5 mean it's activated.
```

My test result is 5.

```
sudo apt-get update
sudo apt-get install cpu-checker
sudo kvm-ok
```
INFO: /dev/kvm exists
KVM acceleration can be used

According to the test from the stackoverflow post, my vt-x is opened.

I will try to reinstall a new debian, and install pve on it...
 
Last edited:

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
3,312
378
88
that vt-x is enabled, should be clear (otherwise you would have a problem starting a qemu guest with KVM acceleration) - your question is relating to
IOMMU groups and PCI(e) passthrough which in intel terms (mostly) is referred to as vt-d

follow the guide from our reference documentation and paste the output of the various check commands
 

fcymk2

New Member
Sep 7, 2019
20
1
3
35
that vt-x is enabled, should be clear (otherwise you would have a problem starting a qemu guest with KVM acceleration) - your question is relating to
IOMMU groups and PCI(e) passthrough which in intel terms (mostly) is referred to as vt-d

follow the guide from our reference documentation and paste the output of the various check commands
I reinstall proxmox-ve_6.1-2.iso, not install on debian. but it can't passthrough also.

output of the various check commands:

root@pve:~# dmesg | grep -e DMAR -e IOMMU -e AMD-Vi
[ 0.026627] DMAR: IOMMU enabled

root@pve:~# # find /sys/kernel/iommu_groups/ -type l
nothing, is this mean no vt-d?

attach file is full dmesg output
 

Attachments

Last edited:

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
3,312
378
88
root@pve:~# # find /sys/kernel/iommu_groups/ -type l
nothing, is this mean no vt-d?
Usually yes - it means that iommu is not enabled working.

Since your CPU (I5-7400) and the chipset (H110) (if i read that correctly) do support vt-d - maybe ask the manufacturer of the computer for a BIOS update or instructions how to enable that..
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE 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 your own in 60 seconds.

Buy now!