[Proxmox 4b1] q35 machines failing to reboot, problems with PCI passthrough.

Ofca

Renowned Member
Aug 21, 2015
9
2
68
As in title, on Proxmox 4 beta 1 q35 machines are unable to reboot without stop/start cycle. After reboot (from within VM), it fails to boot, instead hanging forever at SeaBIOS, just after printing "Press F12 for boot menu.", before stating that it will boot from hard disk.

PCI passthrough sometimes renders machines unbootable - they are freezing in the same way, displaying "Press F12 for boot menu." forever. Removing the 'hostpci0: 03:04.0,pcie=1,driver=vfio' line from config makes it possible to boot, and then typing:

device_add vfio-pci,host=03:04.0,id=hostpci0,bus=ich9-pcie-port-1,addr=0x0

in qm monitor correctly adds the card to the VM.

Any pointers as to how fix the above?
 
Last edited:
Thank you for your reply.
Not sure. I did apt-get update, upgrade, dist-upgrade.

# pveversion -v
proxmox-ve: 4.0-7 (running kernel: 4.1.3-1-pve)
pve-manager: 4.0-26 (running version: 4.0-26/5d4a615b)
pve-kernel-3.19.8-1-pve: 3.19.8-3
pve-kernel-4.1.3-1-pve: 4.1.3-7
lvm2: 2.02.116-pve1
corosync-pve: 2.3.4-2
libqb0: 0.17.1-3
pve-cluster: 4.0-14
qemu-server: 4.0-15
pve-firmware: 1.1-6
libpve-common-perl: 4.0-14
libpve-access-control: 4.0-6
libpve-storage-perl: 4.0-13
pve-libspice-server1: 0.12.5-1
vncterm: 1.2-1
pve-qemu-kvm: 2.4-1
pve-container: 0.9-7
pve-firewall: 2.0-6
pve-ha-manager: 1.0-4
ksm-control-daemon: 1.2-1
glusterfs-client: 3.5.2-2
lxc-pve: 1.1.2-4
lxcfs: 0.9-pve2
cgmanager: 0.37-pve2

# kvm --version
QEMU emulator version 2.3.93, Copyright (c) 2003-2008 Fabrice Bellard
 
I'm not sure it's related, but for the moment, pve-qemu-kvm: 2.4-1 = qemu 2.4 rc3.

pve-qemu-kvm: 2.4-3 = qemu 2.4 final, but the package is not yet available in pvetest repository.


for the reboot problem, is it only when you use hostpci devices ?
 
No. Any machine that's q35 won't boot more than once per vm start/stop cycle. This isn't relevant to PCI Passthrough. On that note, is there any performance gain/loss between q35 and 'normal' machine type? Which one is better for general use if one does not need PCI passthrough?
 
No. Any machine that's q35 won't boot more than once per vm start/stop cycle.
Ok, I'll do tests next week.

This isn't relevant to PCI Passthrough. On that note, is there any performance gain/loss between q35 and 'normal' machine type? Which one is better for general use if one does not need PCI passthrough?

Only difference is that q35 emulate a newer chipset, which emulate pci-express. That's why you need it for pci-(express) passthrough.
 
Last edited by a moderator:
As in title, on Proxmox 4 beta 1 q35 machines are unable to reboot without stop/start cycle. After reboot (from within VM), it fails to boot, instead hanging forever at SeaBIOS, just after printing "Press F12 for boot menu.", before stating that it will boot from hard disk.PCI passthrough sometimes renders machines unbootable - they are freezing in the same way, displaying "Press F12 for boot menu." forever. Removing the 'hostpci0: 03:04.0,pcie=1,driver=vfio' line from config makes it possible to boot, and then typing:device_add vfio-pci,host=03:04.0,id=hostpci0,bus=ich9-pcie-port-1,addr=0x0in qm monitor correctly adds the card to the VM.Any pointers as to how fix the above?
I can confirm this issue. I've updated Proxmox B4 with apt-get update / dist-upgrade and having the same issue.
 
Any idea on an ETA for a fix on this issue? Or even next beta? If it isn't solved soon, we will need to revert to 3.4 and no more feedback :(
 
Any idea on an ETA for a fix on this issue? Or even next beta? If it isn't solved soon, we will need to revert to 3.4 and no more feedback :(

I have seen similar bug report on qemu devel mailing list recently.

So, it must be a qemu or seabios bug. No more informations for now.

Proxmox 4.0 is still BETA. so revert to 3.4 if you can't wait for a fix.
 
We don't have a knife to our throats yet, but can't wait indefinitely either :)

Of course we can try things; that's why we went with BETA - to help even a bit with hammering out bugs. One question tough, will doing this break any upgrade path from beta to stable? ie. will apt-get update && apt-get upgrade && apt-get dist-upgrade still work afterwards?
 
I had the same problem and this seems to solve it. VM boots with machine: q35 parameter now.
ok, great !

I had another problem with this package though. It depends on libjpeg8, which is not in jessie anymore (some info here https://github.com/hhvm/packaging/issues/96). I used this deb: http://antix.daveserver.info/jessie/pool/main/libj/libjpeg8

This is strange, maybe it's because of my build environnement (upgraded from wheezy to jessie).
ii libjpeg8:amd64 8d-1+deb7u1
ii libjpeg8-dev:amd64 8d-1+deb7u1


seem that libjpeg8 has no package for jessie ??? (for wheezy, for stretch/sid, but not jessie)
https://packages.debian.org/search?lang=fr&searchon=names&keywords=libjpeg8

pve-qemu-kvm doesn't not depend directly on this, but maybe another library
 
Works now. After installing updated package I was able to remove libjpeg8 package.

Wait, I have to take that back. After installing your latest package VM won't boot beyond F12 prompt. I had no "machine: q35" parameter before I made that above post. On the other hand previous qemu package did work because I already had LSI SAS adapter passed through and it worked ok. Could you the previous package (the on that depends on libjpeg8) available again? I deleted it already.


Hardware is Gigabyte 990XA-UD3, AMD FX-8320 and 24 GB RAM.
 

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!