vGPU - guest shutdown causes TASK ERROR: timeout waiting on systemd

voarsh

Member
Nov 20, 2020
218
18
23
27
I am running Windows with a vGPU with an attached PCI graphics card and need to reboot to finish installing audio and other drivers but shutting down/restarting causes starting again to show:
TASK ERROR: timeout waiting on systemd

The only way I've been able to turn it off is force stop on webgui.

PCI:
args: -uuid 00000000-0000-0000-0000-000000000102 -device 'vfio-pci,sysfsdev=/sys/bus/pci/devices/0000:0a:00.0/00000000-0000-0000-0000-000000000102,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x10,x-pci-vendor-id=0x10de,x-pci-device-id=0x1f36,x-pci-sub-vendor-id=0x103c,x-pci-sub-device-id=0x860e'
 
do you reboot from within the vm or through the pve gui? also can you please post the syslog/journal/dmesg from such a reboot?
 
do you reboot from within the vm or through the pve gui? also can you please post the syslog/journal/dmesg from such a reboot?
Definitely if I reboot from inside the VM I get this.
As a work around, I will remove the PCI from my arg, set the display to default and carry out my restarts to fix sound, updates, etc


Not sure what to look for in journal, but it shows restarts:

https://pastebin.com/1VxPtKtQ
 
any reason why you add the device via args and not via our hostpci method? (this should support vgpus as well)

also it seems that the journal is only partially in the pastebin? try redirecting into a file (e.g. 'journalctl -b 0 > journal.txt' )
 
any reason why you add the device via args and not via our hostpci method? (this should support vgpus as well)

also it seems that the journal is only partially in the pastebin? try redirecting into a file (e.g. 'journalctl -b 0 > journal.txt' )
There's a particular vGPU method I am using that requires this way of doing it - tricking the driver sort of thing.
Another method (which will give different results) is as you say adding a PCI device in hardware.

I'll look and see if I can get jorurnal again - it's been some time since the error cropped up and might be gone - since I am not doing anything to cause it at the moment - and can't afford to.
 
Any thing on dmesg ? WIth 460 I got kernel BUG at drivers/iommu/intel-iommu.c:994! on vm reboot but shutdown-then-boot is ok. With 450.124 everything works.
 
any reason why you add the device via args and not via our hostpci method? (this should support vgpus as well)

also it seems that the journal is only partially in the pastebin? try redirecting into a file (e.g. 'journalctl -b 0 > journal.txt' )
i expect its because of the use of:

Code:
,addr=0x10,x-pci-vendor-id=0x10de,x-pci-device-id=0x1f36,x-pci-sub-vendor-id=0x103c,x-pci-sub-device-id=0x860e'


today i am trying to use

Code:
args: -set device.hostpci0.x-pci-sub-vendor-id=0x10de -set device.hostpci0.x-pci-sub-device-id=0x860e -set device.hostpci0.addr=1x00

and get this error:

Code:
kvm: -set device.hostpci0..0.x-pci-sub-vendor-id=0x10de: there is no device "hostpci0" defined

even though i thought i had the correct device id:

Code:
hostpci0: 0000:01:00,pcie=1


from running:

Code:
qm showcmd <VMID> --pretty

i can see that the device id has a suffix after a period due to the audio device:

Code:
-device 'vfio-pci,host=0000:01:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on \
-device 'vfio-pci,host=0000:01:00.1,id=hostpci0.1,bus=ich9-pcie-port-1,addr=0x0.1' \


As far as i can tell there is no way to use args: -set device.hostpci[B]0.0[/B].x-pci-sub-vendor-id= without some how escaping the period.

this seems like a bug to me.


EDIT:

A work around is to uncheck "All functions" when using the GUI to attach a PCI device to a VM, and then pass through sub devices separately. The device ID should now match the start of the line passing though the device in the vm config
 
Last edited:

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!