canonical / canonical/multipass
Cannot spin up any VMs with multipass after a power outage.
- 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
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