diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-31 10:22:59 +0100 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-31 10:22:59 +0100 |
| commit | 2ae4deaf7ac420ad5871e3957fb027a856ce7edf (patch) | |
| tree | 8733dc16167db897b032cce4b72129d331c15265 /desktop/modules/vm | |
| parent | e89994621d81168c6a5ee15adcb798e449bcc4f2 (diff) | |
| download | quickshell-2ae4deaf7ac420ad5871e3957fb027a856ce7edf.tar.gz quickshell-2ae4deaf7ac420ad5871e3957fb027a856ce7edf.zip | |
A managed save written by libvirt 12.0.0's default raw format restores
through an fd: migration, which QEMU 11.1.2 refuses with "migrate-incoming:
fd: migration to a file is not supported. Use file: instead." The start
then fails the same way every time, and the notification only carried
that raw error, which does not say the fix is the page's own Discard
saved state button.
A start failure mentioning migrate-incoming now leads with that advice
and keeps the raw error below it. The host side was fixed separately
with save_image_format = "sparse" in qemu.conf, which restores through
file: and was checked with a managedsave and start round trip.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/modules/vm')
| -rw-r--r-- | desktop/modules/vm/VmModule.qml | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/desktop/modules/vm/VmModule.qml b/desktop/modules/vm/VmModule.qml index fa88cef..6a7a9c8 100644 --- a/desktop/modules/vm/VmModule.qml +++ b/desktop/modules/vm/VmModule.qml @@ -48,7 +48,15 @@ Module { property Connections conn: Connections { target: Virsh - function onActionFailed(vm, action, message) { mod.notify(vm, action, message); } + // A start that fails in migrate-incoming is a managed save QEMU will + // not restore (an fd: save under a QEMU that wants file:), and it + // fails the same way every time, so say what to do about it. + function onActionFailed(vm, action, message) { + if (action === "start" && message.includes("migrate-incoming")) + message = "Its saved state can't be restored. Discard saved state on the VMs page, " + + "then start it again: it boots cold, the disk is untouched.\n\n" + message; + mod.notify(vm, action, message); + } } property Connections dockerConn: Connections { |
