Unable to add GPU to VM - No IOMMU detected

Jackster

Active Member
Nov 12, 2014
23
0
41
Hi all

I have a VM that I need a GPU attached to so I can do some transcoding.

My setup is an Intel i7 3770k with an MSI Z77A-GD65 GAMING motherboard.

When I go to add a PCI device to my VM, I get the following error.
1588882937667.png

I have gone through the Wiki https://pve.proxmox.com/wiki/Pci_passthrough

My Grub
Code:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Proxmox Virtual Environment"
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
GRUB_CMDLINE_LINUX=""


# Disable os-prober, it might add menu entries for each guest
GRUB_DISABLE_OS_PROBER=true

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Rebooted and ran the following

Code:
root@proxmox:~# dmesg | grep -e DMAR -e IOMMU
[    0.046062] DMAR: IOMMU enabled

When I go to add the GPU to the VM, I get the first screenshot warning.
After adding the GPU to the VM, trying to run the VM I get.

1588883190336.png



My /etc/modules
Code:
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd


Running dmesg | grep 'remapping' returns nothing.

I have tried
echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf
But nope.

find /sys/kernel/iommu_groups/ -type l also returns nothing.


Checking in my BIOS
IMG_20200507_211613-min.jpg
IMG_20200507_211728-min.jpg
As you can see VT-D Tech is Disabled and I am unable to enable it.

Any ideas?
Intel Virtualization Tech is meant to allow for VMs to access the GPU and other PCI devices..


[edit1]
lsmod | grep vfio
Code:
vfio_pci               49152  0
irqbypass              16384  7 vfio_pci,kvm
vfio_virqfd            16384  1 vfio_pci
vfio_iommu_type1       28672  0
vfio                   32768  2 vfio_iommu_type1,vfio_pci
 
Last edited:
oh fuck I just noticed the i7 3770k is not compatible.
1588884568751.png
Misread the page.

Great. Now I have to set up Plex on the Proxmox host rather than VM.
 
i think you miss the /etc/modprobe.d/vfio.conf

Code:
First, find the device and vendor id of your vga card:

$ lspci -n -s 01:00
01:00.0 0300: 10de:1381 (rev a2)
01:00.1 0403: 10de:0fbc (rev a1)
The Vendor:Device IDs for this GPU and it's audio functions are therefore 10de:1381, 10de:0fbc.

Then, create a file:

echo "options vfio-pci ids=10de:1381,10de:0fbc" > /etc/modprobe.d/vfio.conf
blacklist the drivers:


edit too bad for the non support vtd