canonical / canonical/multipass

Cannot spin up any VMs with multipass after a power outage.

Open
#4,382 8 comments 0 reactions 0 assignees View on GitHub
documentation question
Dominant language
C++
Stars
9.2k
Forks
828
Avg merge
3d 1h
Merged PRs (30d)
44

Description

**Describe the bug**
I cannot spin up any VMs with multipass after a power outage.

**To Reproduce**
How, and what happened?
1. Launched a VM in a server.
2. It worked for 3 months nonstop, without any problems.
3. A power outage made the host restart.
4. When I tried to start the VM back, it gets stuck in "Starting" and gets timed out every time, and goes into "Unknown" state. I can put it in the "Stopped" state, but I cannot start it properly.

Find the logs below.

**Logs**
```
Sep 22 14:02:06 nekane multipassd[25616]: Saved file `/var/snap/multipass/common/data/multipassd/multipassd-vm-instances.json` successfully in attempt #1
Sep 22 14:02:06 nekane multipassd[25616]: Saved file `/var/snap/multipass/common/data/multipassd/multipassd-vm-instances.json` successfully in attempt #1
Sep 22 14:06:18 nekane multipassd[25616]: Returning setting local.driver=qemu
Sep 22 14:08:11 nekane multipassd[896]: fetch manifest periodically
Sep 22 14:11:25 nekane multipassd[25616]: fetch manifest periodically
Sep 22 14:14:11 nekane multipassd[25616]: Loading "anbox-cloud-appliance" v1
Sep 22 14:14:11 nekane multipassd[25616]: Loading "charm-dev" v1
Sep 22 14:14:11 nekane multipassd[25616]: Loading "docker" v1
Sep 22 14:14:11 nekane multipassd[25616]: Loading "jellyfin" v1
Sep 22 14:14:11 nekane multipassd[25616]: Loading "minikube" v1
Sep 22 14:14:11 nekane multipassd[25616]: Loading "ros2-humble" v1
Sep 22 14:14:11 nekane multipassd[25616]: Loading "ros2-jazzy" v1
Sep 22 14:15:08 nekane multipassd[25616]: SSH session disconnected
Sep 22 14:15:08 nekane multipassd[25616]: Could not broadcast shutdown message in VM: SSH unavailable on instance test-vm: not running
Sep 22 14:15:08 nekane multipassd[25616]: QMP: {"timestamp": {"seconds": 1758543308, "microseconds": 962274}, "event": "POWERDOWN"}
Sep 22 14:15:08 nekane multipassd[25616]: VM powering down
Sep 22 14:15:08 nekane multipassd[25616]: QMP: {"return": {}}
Sep 22 14:15:13 nekane multipassd[25616]: QMP: {"timestamp": {"seconds": 1758543313, "microseconds": 129234}, "event": "SHUTDOWN", "data": {"guest": true, "reason": "guest-shutdown"}}
Sep 22 14:15:13 nekane multipassd[25616]: VM shut down
Sep 22 14:15:13 nekane multipassd[25616]: process state changed to NotRunning
Sep 22 14:15:13 nekane multipassd[25616]: process finished with exit code 0
Sep 22 14:15:13 nekane multipassd[25616]: Saved file `/var/snap/multipass/common/data/multipassd/multipassd-vm-instances.json` successfully in attempt #1
Sep 22 14:16:38 nekane multipassd[25616]: process working dir '/snap/multipass/15737/qemu'
Sep 22 14:16:38 nekane multipassd[25616]: process program 'qemu-system-x86_64'
Sep 22 14:16:38 nekane multipassd[25616]: process arguments '-bios, OVMF.fd, --enable-kvm, -cpu, host, -nic, tap,ifname=tap-94c68a5fa3a,script=no,downscript=no,model=virtio-net-pci,mac=52:54:00:41:47:51, -device, virtio-scsi-pci,id=scsi0, -drive, file=/var/snap/multipass/common/data/multipassd/vault/instances/test-vm/ubuntu-22.04-server-cloudimg-amd64.img,if=none,format=qcow2,discard=unmap,id=hda, -device, scsi-hd,drive=hda,bus=scsi0.0, -smp, 1, -m, 1024M, -qmp, stdio, -chardev, null,id=char0, -serial, chardev:char0, -nographic, -cdrom, /var/snap/multipass/common/data/multipassd/vault/instances/test-vm/cloud-init-config.iso'
Sep 22 14:16:38 nekane multipassd[25616]: [27327] started: qemu-system-x86_64 -nographic -dump-vmstate /tmp/multipassd.bxXhmd
Sep 22 14:16:38 nekane multipassd[25616]: Saved file `/var/snap/multipass/common/data/multipassd/multipassd-vm-instances.json` successfully in attempt #1
Sep 22 14:16:38 nekane multipassd[25616]: Applied AppArmor policy: multipass.test-vm.qemu-system-x86_64
Sep 22 14:16:38 nekane multipassd[25616]: process state changed to Starting
Sep 22 14:16:38 nekane multipassd[25616]: process state changed to Running
Sep 22 14:16:38 nekane multipassd[25616]: [27329] started: qemu-system-x86_64 -bios OVMF.fd --enable-kvm -cpu host -nic tap,ifname=tap-94c68a5fa3a,script=no,downscript=no,model=virtio-net-pci,mac=52:54:00:41:47:51 -device virtio-scsi-pci,id=scsi0 -drive file=/var/snap/multipass/common/data/multipassd/vault/instances/test-vm/ubuntu-22.04-server-cloudimg-amd64.img,if=none,format=qcow2,discard=unmap,id=hda -device scsi-hd,drive=hda,bus=scsi0.0 -smp 1 -m 1024M -qmp stdio -chardev null,id=char0 -serial chardev:char0 -nographic -cdrom /var/snap/multipass/common/data/multipassd/vault/instances/test-vm/cloud-init-config.iso
Sep 22 14:16:38 nekane multipassd[25616]: process started
Sep 22 14:16:38 nekane multipassd[25616]: Saved file `/var/snap/multipass/common/data/multipassd/multipassd-vm-instances.json` successfully in attempt #1
Sep 22 14:16:38 nekane multipassd[25616]: QMP: {"QMP": {"version": {"qemu": {"micro": 1, "minor": 2, "major": 8}, "package": ""}, "capabilities": ["oob"]}}
Sep 22 14:16:38 nekane multipassd[25616]: Waiting for SSH to be up
Sep 22 14:16:38 nekane multipassd[25616]: QMP: {"return": {}}
Sep 22 14:16:40 nekane multipassd[25616]: QMP: {"timestamp": {"seconds": 1758543400, "microseconds": 744786}, "event": "RTC_CHANGE", "data": {"offset": 0, "qom-path": "/machine/unattached/device[4]/rtc"}}
Sep 22 14:16:41 nekane multipassd[25616]: QMP: {"timestamp": {"seconds": 1758543400, "microseconds": 800641}, "event": "RTC_CHANGE", "data": {"offset": 0, "qom-path": "/machine/unattached/device[4]/rtc"}}
Sep 22 14:16:51 nekane multipassd[25616]: QMP: {"timestamp": {"seconds": 1758543411, "microseconds": 687636}, "event": "NIC_RX_FILTER_CHANGED", "data": {"path": "/machine/unattached/device[22]/virtio-backend"}}
```
It always gets stuck here.

**Additional info**
- OS: Linux 6.1.0-39-amd64 SMP PREEMPT_DYNAMIC DebianGNU/Linux 12 (bookworm) 6.1.148-1 (2025-08-26) x86_64
- `multipass version`: The problem started with `1.16.1`, I switched to the edge channel to get `1.17.0-dev.456+gcb628d61`, but it persists.
- `multipass info`: I deleted all VMs.
- `multipass get local.driver`: `qemu`

Contributor guide

Open the contributing guide

Research direction

Start with the QEMU startup and SSH-wait sequence shown in the multipassd logs, focusing on the transition after the NIC_RX_FILTER_CHANGED event. Reproduce the failed restart on Debian 12 with the QEMU driver and compare the logs with a normally booting VM. Done means identifying and fixing the cause of the post-outage startup hang, with a regression test if the relevant test area is found.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
infrastructure, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.