KVM IOMMU startup error

kobuki

Renowned Member
Dec 30, 2008
474
28
93
I have a problem starting one of my VMs on a server wit a redirected PCIe card. It was working fine previously. I have tried all workarounds I posted here without success. This seems to be related to this bugreport. Is it possible that the related patch hasn't been incorporated in the PVE repo? I've installed pve-qemu-kvm: 2.1-10 from pvetest, but pve-qemu-kvm: 2.1-9 does the same.

The error I have:
Code:
# qm start 100
**
ERROR:qom/object.c:725:object_unref: assertion failed: (obj->ref > 0)
start failed: command '/usr/bin/kvm -id 100 -chardev 'socket,id=qmp,path=/var/run/qemu-server/100.qmp,server,nowait' -mon 'chardev=qmp,mode=control' -vnc unix:/var/run/qemu-server/100.vnc,x509,password -pidfile /var/run/qemu-server/100.pid -daemonize -name host.name.local -smp 'sockets=1,cores=2' -nodefaults -boot 'menu=on' -vga cirrus -cpu kvm64,+lahf_lm,+x2apic,+sep -k en-us -m 4096 -device 'piix3-usb-uhci,id=uhci,bus=pci.0,addr=0x1.0x2' -device 'usb-tablet,id=tablet,bus=uhci.0,port=1' -device 'pci-assign,host=01:00.0,id=hostpci0,bus=pci.0,addr=0x10' -device 'virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3' -iscsi 'initiator-name=iqn.1993-08.org.debian:01:4754c09e9345' -drive 'if=none,id=drive-ide2,media=cdrom,aio=native' -device 'ide-cd,bus=ide.1,unit=0,drive=drive-ide2,id=ide2,bootindex=200' -drive 'file=/var/lib/vz/images/100/vm-100-disk-1.qcow2,if=none,id=drive-virtio0,format=qcow2,aio=native,cache=none' -device 'virtio-blk-pci,drive=drive-virtio0,id=virtio0,bus=pci.0,addr=0xa,bootindex=100' -netdev 'type=tap,id=net0,ifname=tap100i0,script=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown,vhost=on' -device 'virtio-net-pci,mac=9B:29:69:58:43:3E,netdev=net0,bus=pci.0,addr=0x12,id=net0,bootindex=300'' failed: exit code 1

Version, config:
Code:
# pveversion -v
proxmox-ve-2.6.32: 3.3-138 (running kernel: 2.6.32-33-pve)
pve-manager: 3.3-2 (running version: 3.3-2/995e687e)
pve-kernel-2.6.32-32-pve: 2.6.32-136
pve-kernel-2.6.32-33-pve: 2.6.32-138
pve-kernel-2.6.32-28-pve: 2.6.32-124
pve-kernel-2.6.32-30-pve: 2.6.32-130
lvm2: 2.02.98-pve4
clvm: 2.02.98-pve4
corosync-pve: 1.4.7-1
openais-pve: 1.1.4-3
libqb0: 0.11.1-2
redhat-cluster-pve: 3.2.0-2
resource-agents-pve: 3.9.2-4
fence-agents-pve: 4.0.10-1
pve-cluster: 3.0-15
qemu-server: 3.1-35
pve-firmware: 1.1-3
libpve-common-perl: 3.0-19
libpve-access-control: 3.0-15
libpve-storage-perl: 3.0-23
pve-libspice-server1: 0.12.4-3
vncterm: 1.1-8
vzctl: 4.0-1pve6
vzprocps: 2.0.11-2
vzquota: 3.1-2
pve-qemu-kvm: 2.1-10
ksm-control-daemon: 1.1-1
glusterfs-client: 3.5.2-1

# grep 33.*mmu /boot/grub/grub.cfg
        linux   /boot/vmlinuz-2.6.32-33-pve root=/dev/mapper/pve-root ro  quiet intel_iommu=igfx_off

Could you please help? I can't start this particular VM since it depends on the PCI passthrough feature working. The vm is a file server and I can't access the files on it.
 
I forgot to provide the VM config, here it is:

Code:
bootdisk: virtio0
cores: 2
hostpci0: 01:00.0
ide2: none,media=cdrom
memory: 4096
name: host.name.local
net0: virtio=8A:79:69:48:33:2E,bridge=vmbr0
onboot: 1
ostype: l26
sockets: 1
virtio0: local:100/vm-100-disk-1.qcow2,format=qcow2,size=8G
 
In hopes that it might be useful for someone else with an Intel DQ67SW motherboard: as the solution I ended up disabling the IGP in the BIOS. Interestingly enough, I still have text console on either a physically attached monitor or the remote KVM (Intel AMT). So now everything is working as before, except for the graphics but it's a headless server anyway so I don't care.

The problem stems from corrupted DMAR tables in the BIOS as I have gathered from the various sources on the net about Intel IOMMU. Disabling the IGP enables me using the newest kvm binary available in the PVE repo, too (2.1.2).
 

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!