podman: `podman machine start` stuck "Waiting for VM" indefinitely with qemu synchronous exception MacOS M3

Issue Description

With a fresh install via homebrew, I cannot start a machine and it hangs indefinitely at Waiting for VM. Running with debug shows that qemu hits a Synchronous Exeception at 0x00000000BC308000.

Steps to reproduce the issue

Steps to reproduce the issue

  1. brew install podman
  2. podman machine init
  3. podman machine start

Describe the results you received

VM fails to start.

Describe the results you expected

VM starts.

podman info output

Version: 4.7.2
OS: macOS 14.2
Chip: Apple M3 Pro
Architecture: arm64

Podman in a container

No

Privileged Or Rootless

None

Upstream Latest Release

Yes

About this issue

  • Original URL
  • State: open
  • Created 7 months ago
  • Reactions: 15
  • Comments: 39 (3 by maintainers)

Most upvoted comments

I solved this by adding following to ~/.config/containers/containers.conf which @patrick-andrew-jain-taylor mentioned

[machine]
  provider="applehv"

Then I downloaded the vfkit v0.5.0 binary from https://github.com/crc-org/vfkit/releases/tag/v0.5.0 and placed it in /usr/local/bin. After this I could successfully run podman machine init & podman machine start without having to install podman-desktop.

M3 Max
Podman 4.8.2
macOS Sonoma  Version 14.1

I’ve been having this issue on/off.

What got it working consistently for me is very similar to @FullofQuarks

If you already have podman-desktop installed make sure to delete it as well:

podman machine rm  
brew uninstall podman-desktop podman qemu  
rm -rf ~/.config/containers  
rm -rf ~/.local/share/containers
## <didn't do this>brew install podman-desktop

Instead of installing podman-desktop via brew I downloaded and installed the arm .dmg file (follow the instructions) and so far no issues (so far!!). Will report back if the issue resurfaces.

What worked for me:

These links don’t work anymore.

I am on M3 Max. Changing memory on init didn’t work.

Uninstalling everything, and installing podman-desktop worked.

podman machine rm
brew uninstall podman qemu
rm -rf ~/.config/containers
rm -rf ~/.local/share/containers
brew install podman-desktop

Start podman-desktop, init and start podman machine. I disabled “Machine with root privileges:”, but it probably doesn’t matter.

Is this not a result of this issue tracked on the qemu project, which is the result of a bug even further upstream?

https://gitlab.com/qemu-project/qemu/-/issues/1990

Reading through some other issues I’ve found this workaround: podman machine init -m 3072

Unfortunately no such luck on my end.

Usually these are caused by bad combination of qemu and podman. We are moving to apple hypervisor for better stabiity.

Sometimes there is a bogus qemu or qcow2 left on the machine and Podman grabs it, or there is a podman installed via brew that conflicts with the podman installed via podman-desktop, hint we want the one installed by podman-desktop.

You could try this with the apple hypervisor, which we plan to move with to see if it works better. Qemu has proven to be not as stable as we like.

If you have a recent Podman, I believe you can do.

export CONTAINERS_MACHINE_PROVIDER=applehv
podman machine init

installed vfkit via this doc: https://github.com/crc-org/vfkit but the result of podman machine start is Error: Get "http://localhost:8081/vm/state": EOF

What worked for me:

These links don’t work anymore.

I am on M3 Max. Changing memory on init didn’t work.

Uninstalling everything, and installing podman-desktop worked.

podman machine rm
brew uninstall podman qemu
rm -rf ~/.config/containers
rm -rf ~/.local/share/containers
brew install podman-desktop

Start podman-desktop, init and start podman machine. I disabled “Machine with root privileges:”, but it probably doesn’t matter.

I have the same issue on my M1 and these instructions does not work for me. =(

And now I’m seeming to have problems with volumes and my VM is somehow back in a “Currently starting” state. Can’t stop, or remove it. 👎

@jaydorsey I have the same specs and followed your instructions. I am still unable to get the VM to run: Waiting for VM ...

EDIT: I installed brew install podman-desktop and enabled podman engine this way and it is working now 🤷🏽‍♂️

Reading through some other issues I’ve found this workaround: podman machine init -m 3072

Unfortunately no such luck on my end.

I didn’t have any luck doing this initially either; then I absolutely nuked everything:

  1. Killed all the podman related processes using Activity Monitor
  2. Ran podman machine rm to delete the machine
  3. Uninstalled podman, podman desktop, and qemu

Re-ran it all from scratch today, starting with podman only and then running podman desktop afterwards:

  1. Reinstall podman & qemu
  2. Run the command from jwhostet, then podman machine start and it worked
  3. Open up podman desktop, everything looks good

podman 4.8.0 qemu 8.1.3_2 macos 14.1.1 M3 Max

I have a max, you have a pro, but one other person with a pro reported success so double-checking everything might be worth a shot? I tried similar steps before but skipped the podman machine rm step before and I deleted podman desktop by just dragging it to the trash before so that might have been why it failed the first time

Reading through some other issues I’ve found this workaround: podman machine init -m 3072

podman 4.7.2 qemu 8.1.3_2 MacOs 14.1.1 - M3 Max