"complex" VMs get timeout on start

jaxx

Active Member
Oct 11, 2017
19
0
41
Toulon, France
jaxx.org
Hi !

I'm having a bit of a pickle on starting a fairly horrible VM (because it's Windows). It has 3 disks and a GPU passthrough.

I have a local NVMe Drive and a fairly good CEPH pool on this little cluster (18 spinners with NVMe WAL/journal and 2x10Gb loop)

It manages to start (sometimes) if I have in on the local NVMe and a single main disk, but I'd like to have more images attached, and have it sitting on the larger pool.

Code:
/dev/rbd27
/dev/rbd28
/dev/rbd29
rbd: sysfs write failed
can't unmap rbd device /dev/rbd-pve/eac2e64c-8f0b-4d6b-8654-5c5fe3daa74c/bigpool/vm-103357027-disk-1: rbd: sysfs write failed
rbd: sysfs write failed
can't unmap rbd device /dev/rbd-pve/eac2e64c-8f0b-4d6b-8654-5c5fe3daa74c/bigpool/vm-103357027-disk-0: rbd: sysfs write failed
rbd: sysfs write failed
can't unmap rbd device /dev/rbd-pve/eac2e64c-8f0b-4d6b-8654-5c5fe3daa74c/bigpool/vm-103357027-disk-2: rbd: sysfs write failed
volume deactivation failed: bigpool:vm-103357027-disk-1 bigpool:vm-103357027-disk-0 bigpool:vm-103357027-disk-2 at /usr/share/perl5/PVE/Storage.pm line 1233.
TASK ERROR: start failed: command '/usr/bin/kvm -id 103357027 -name 'jaxx-windows01,debug-threads=on' -no-shutdown -chardev 'socket,id=qmp,path=/var/run/qemu-server/103357027.qmp,server=on,wait=off' -mon 'chardev=qmp,mode=control' -chardev 'socket,id=qmp-event,path=/var/run/qmeventd.sock,reconnect=5' -mon 'chardev=qmp-event,mode=control' -pidfile /var/run/qemu-server/103357027.pid -daemonize -smbios 'type=1,uuid=1919ad38-c6d8-4501-868d-cb2f79fd68be' -drive 'if=pflash,unit=0,format=raw,readonly=on,file=/usr/share/pve-edk2-firmware//OVMF_CODE_4M.secboot.fd' -drive 'if=pflash,unit=1,id=drive-efidisk0,format=raw,file=/dev/rbd-pve/eac2e64c-8f0b-4d6b-8654-5c5fe3daa74c/bigpool/vm-103357027-disk-2,size=540672' -smp '6,sockets=1,cores=6,maxcpus=6' -nodefaults -boot 'menu=on,strict=on,reboot-timeout=1000,splash=/usr/share/qemu-server/bootsplash.jpg' -vga none -nographic -cpu host,+kvm_pv_eoi,+kvm_pv_unhalt -m 16384 -object 'iothread,id=iothread-virtio0' -object 'iothread,id=iothread-virtio1' -readconfig /usr/share/qemu-server/pve-q35-4.0.cfg -device 'vmgenid,guid=819c5658-9479-4b97-a535-b96d784486dc' -device 'usb-tablet,id=tablet,bus=ehci.0,port=1' -device 'vfio-pci,host=0000:87:00.0,id=hostpci0.0,bus=ich9-pcie-port-1,addr=0x0.0,multifunction=on' -device 'vfio-pci,host=0000:87:00.1,id=hostpci0.1,bus=ich9-pcie-port-1,addr=0x0.1' -chardev 'socket,path=/var/run/qemu-server/103357027.qga,server=on,wait=off,id=qga0' -device 'virtio-serial,id=qga0,bus=pci.0,addr=0x8' -device 'virtserialport,chardev=qga0,name=org.qemu.guest_agent.0' -iscsi 'initiator-name=iqn.1993-08.org.debian:01:5fb11012c029' -drive 'if=none,id=drive-ide0,media=cdrom,aio=io_uring' -device 'ide-cd,bus=ide.0,unit=0,drive=drive-ide0,id=ide0,bootindex=103' -drive 'if=none,id=drive-ide2,media=cdrom,aio=io_uring' -device 'ide-cd,bus=ide.1,unit=0,drive=drive-ide2,id=ide2,bootindex=101' -drive 'file=/dev/rbd-pve/eac2e64c-8f0b-4d6b-8654-5c5fe3daa74c/bigpool/vm-103357027-disk-1,if=none,id=drive-virtio0,format=raw,cache=none,aio=io_uring,detect-zeroes=on' -device 'virtio-blk-pci,drive=drive-virtio0,id=virtio0,bus=pci.0,addr=0xa,iothread=iothread-virtio0,bootindex=100' -drive 'file=/dev/rbd-pve/eac2e64c-8f0b-4d6b-8654-5c5fe3daa74c/bigpool/vm-103357027-disk-0,if=none,id=drive-virtio1,format=raw,cache=none,aio=io_uring,detect-zeroes=on' -device 'virtio-blk-pci,drive=drive-virtio1,id=virtio1,bus=pci.0,addr=0xb,iothread=iothread-virtio1' -netdev 'type=tap,id=net0,ifname=tap103357027i0,script=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown,vhost=on' -device 'virtio-net-pci,mac=AE:45:3F:BE:21:92,netdev=net0,bus=pci.0,addr=0x12,id=net0,rx_queue_size=1024,tx_queue_size=1024,bootindex=102' -machine 'type=q35+pve0'' failed: got timeout

The only workaround I found here was giving it a suspended lock first, with seems to make the qm start process a bit less trigger happy

Code:
root@xxx-priv-03:~# qm set 103357027 --lock suspended
update VM 103357027: -lock suspended
root@xxx-priv-03:~# qm start 103357027
Resuming suspended VM
Resumed VM, removing state
root@xxx-priv-03:~# pveversion -v
proxmox-ve: 7.3-1 (running kernel: 5.15.83-1-pve)
pve-manager: 7.3-6 (running version: 7.3-6/723bb6ec)
pve-kernel-helper: 7.3-4
pve-kernel-5.15: 7.3-2
pve-kernel-5.15.85-1-pve: 5.15.85-1
pve-kernel-5.15.83-1-pve: 5.15.83-1
pve-kernel-5.15.74-1-pve: 5.15.74-1
ceph: 17.2.5-pve1
ceph-fuse: 17.2.5-pve1
corosync: 3.1.7-pve1
criu: 3.15-1+pve-1
glusterfs-client: 9.2-1
ifupdown2: 3.1.0-1+pmx3
libjs-extjs: 7.0.0-1
libknet1: 1.24-pve2
libproxmox-acme-perl: 1.4.3
libproxmox-backup-qemu0: 1.3.1-1
libpve-access-control: 7.3-1
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.3-2
libpve-guest-common-perl: 4.2-3
libpve-http-server-perl: 4.1-5
libpve-storage-perl: 7.3-2
libspice-server1: 0.14.3-2.1
lvm2: 2.03.11-2.1
lxc-pve: 5.0.2-1
lxcfs: 5.0.3-pve1
novnc-pve: 1.3.0-3
proxmox-backup-client: 2.3.3-1
proxmox-backup-file-restore: 2.3.3-1
proxmox-mail-forward: 0.1.1-1
proxmox-mini-journalreader: 1.3-1
proxmox-widget-toolkit: 3.5.5
pve-cluster: 7.3-2
pve-container: 4.4-2
pve-docs: 7.3-1
pve-edk2-firmware: 3.20220526-1
pve-firewall: 4.2-7
pve-firmware: 3.6-3
pve-ha-manager: 3.5.1
pve-i18n: 2.8-2
pve-qemu-kvm: 7.1.0-4
pve-xtermjs: 4.16.0-1
qemu-server: 7.3-3
smartmontools: 7.2-pve3
spiceterm: 3.2-2
swtpm: 0.8.0~bpo11+2
vncterm: 1.7-1
root@xxx-priv-03:~# qm config 103357027
agent: 1
balloon: 0
bios: ovmf
boot: order=virtio0;ide2;net0;ide0
cores: 6
cpu: host
efidisk0: bigpool:vm-103357027-disk-2,efitype=4m,pre-enrolled-keys=1,size=1M
hostpci0: 0000:87:00,pcie=1
ide0: none,media=cdrom
ide2: none,media=cdrom
machine: q35
memory: 16384
meta: creation-qemu=7.1.0,ctime=1676366351
name: jaxx-windows01
net0: virtio=AE:45:3F:BE:21:92,bridge=vmbrXXX,rate=10,tag=XX
numa: 0
ostype: l26
scsihw: virtio-scsi-single
smbios1: uuid=1919ad38-xxxx-zzzz-868d-cb2f79fd68be
sockets: 1
tags: jaxx
vga: none
virtio0: bigpool:vm-103357027-disk-1,iothread=1,size=80G
virtio1: bigpool:vm-103357027-disk-0,backup=0,iothread=1,size=320G
vmgenid: 819c5658-9479-xxxx-zzzz-b96d784486dc
root@xxx-priv-03:~#

I had little hope using a hookscript to set the lock on pre-start because it can't get a lock itself (i did try just in case)

Is there any setting I can change to make it a bit less a pain ?

Thanks :)

(it's mainly for a bit of gaming and some GPU bound apps that I don't want to run on my trusty old macbookpro, (ps, moonlight+sunshine does wonders, and a tad of rustdesk if the former goes wonky, display set to none))[/CODE]
 
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!