Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[6.7.2] Hibernate VMs upon host shutdown broken for Win10

  • Annoyance

Expected:

- running VM to be hibernated upon restart using GUI. the hibernation state should be preserved after restart

- already hibernated VM to preserve hibernation state upon restart using GUI

- possibly the same upon start and stop array using GUI

 

What happens:

- When hitting restart using GUI, unknown whether VM hibernates. Either way, hibernation state is not preserved after restart

- When stopping and starting array using GUI, either 1) qemu-system-x86_64 prevents stop or 2) stop is ok but libvirt.img is locked by qemu-system-x86_64 upon restart preventing libvirt from starting (VM tab won't load)

 

Here's the error message when libvirt.img fails to start:

Tower root: /mnt/disks/ssd/system/libvirt/libvirt.img is in-use, cannot mount

When I use fuser and ps to find out which processes are locking it, I see the hibernated VM:

/usr/bin/qemu-system-x86_64 -name guest=win10,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-1-win10/master-key.aes -machine pc-i440fx-3.1,accel=kvm,usb=off,dump-guest-core=off,mem-merge=off -cpu host,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff,hv_vendor_id=none -drive file=/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd,if=pflash,format=raw,unit=0,readonly=on -drive file=/etc/libvirt/qemu/nvram/2f4360e3-a8a0-ca29-a732-4f1191b06173_VARS-pure-efi.fd,if=pflash,format=raw,unit=1 -m 4096 -realtime mlock=off -smp 2,sockets=1,cores=1,threads=2 -uuid 2f4360e3-a8a0-ca29-a732-4f1191b06173 -no-user-config -nodefaults -chardev socket,id=charmonitor,fd=26,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-hpet -no-shutdown -boot strict=on -device nec-usb-xhci,p2=15,p3=15,id=usb,bus=pci.0,addr=0x7 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x4 -drive file=/mnt/disks/ssd/domains/win10/vdisk1.img,format=raw,if=none,id=drive-virtio-disk2,cache=writeback -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk2,id=virtio-disk2,bootindex=1,write-cache=on -netdev tap,fd=29,id=hostnet0,vhost=on,vhostfd=30 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:1a:cb:11,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -chardev socket,id=charchannel0,fd=31,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 -device usb-tablet,id=input0,bus=usb.0,port=1 -vnc 0.0.0.0:0,websocket=5700 -k en-us -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 -sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny -msg timestamp=on

(Also, my docker containers were listed as locking it as well for some reason which I wasn't sure was normal, but I turned off autostart on all dockers to remove that as a source of noise)

 

Tried:

- multiple Win10 (Pro) VMs including completely clean configs

- storing libvirt.img and VM domains on /mnt/cache as well as unassigned device

- hibernate using 1) host "virsh dompmsuspend <domain> disk", 2) guest start menu, 3) guest PassMark PC Sleep test tool (which confirmed S4 sleep worked)

 

Notes:

- when hibernated by any method, the VM shows up as "paused" in GUI, not "stopped" - not sure if this is the norm

- when hibernated by any method, virsh shows the domain as "pmsuspended" as expected

- I can resume from hibernate fine

- qemu-agent is installed and I confirmed the service is running using PowerShell

 

This is a real pain point as I have multiple VMs running at any given time relied on by multiple users, and it's a real pain to make sure everything is shut off whenever I troubleshoot the array or add/change a disk

tower-diagnostics-20190719-1543.zip

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.