-
Notifications
You must be signed in to change notification settings - Fork 660
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Instances won't start on Apple M3 silicon #3308
Comments
Hi @jwynharris, for some reason DHCP isn't working for you and instances don't get an IP address (which they need for the start procedure to complete). There could be multiple reasons for that. One frequent cause is that the macOS firewall sometimes blocks its own bootpd process. This is extensively discussed in #2387 and unfortunately there isn't much we can do about it (other than offer workarounds). Hopefully, if enough people report this problem to Apple, they will come to fix it? If that is not your case, there are a few other possible causes for this, mostly documented here. Please try those suggestions and let us know how it goes for you. |
Hi @ricab, thank you for your help. To Reproduce
Expected behaviour To run BTW I installed multipass on my older Intel mac (also running Somona 14.1.1) just before - and it working straight away. Super weird stuff Apple! This shows useful stuff in the dhcpd_leases file so pretty sure the problem is with getting dhcp to play ball on apple silicon. Additional context Last line of the log is: I note in most other peoples reports that the last line they see is more more step and something like: '[2022-01-04T13:31:08.663] [debug] [dbarn] QMP: {"timestamp": {"seconds": 1641321068, "microseconds": 663550}, "event": "NIC_RX_FILTER_CHANGED", "data": {"path": "/machine/unattached/device[7]/virtio-backend"}}' I've never seen this line. So I have also tried:
I see that since version 14 (#3209) you can't enable it using Generally looks like Ok, so I've just tried Let me post this, reinstall multipass, reboot, maybe kickstart bootpd and see what happens... UPDATE - it did not help :( After reboot, I kickstarted com.apple.bootpd, ran multipass launch, and still no luck. I will report this problem to apple as you suggest. |
I've also just updated to Sonoma 14.2 Beta (23C5047e), in the hope this would fix. No luck unfortunately.. |
Same Problem here with Sonoma 14.1.1, multipass 1.12.2. no firewall, no VPN. |
Just wanted to add one more data point here: I could also confirm exactly what @jwynharris was seeing. I just transitioned from a M2 (Max) MBP to the new M3 (Max), both with Firewall disabled. |
Hi @ricab, I suspect this is a new / different issue. Do you or someone else familiar with the code base have access to an M3 that can debug this specific issue? Then if it is something weird with Apple's networking / drivers / hardware then I can submit another bug request with more detail, as can others. Happy to help as I can as I am keen to solve this for me and anyone else with an M3. Also I would be interested to hear if there is anyone reading this who has an M3 and is NOT experiencing this issue (as currently assuming everyone will). Thank you, |
To also be more precise: |
Hello All, I'm convinced this is not the dreaded Apple Firewall issue and is appearing more likely to be a lack of M3 support in this version of QEMU that is in our latest package. Unfortunately, no one on the Multipass Team has an M3-based Mac yet. That said, I would like to see what is happening in the boot process. @jwynharris, since you've been investigating this quite a bit, could I please ask you to do the following? First, make sure all
Then run the following command in the terminal:
The preceding assumes an instance named In the meantime, I will work on updating our version of QEMU and get a test package built that can be tried. Thank you! |
From all indications, looks like the same issue afflicting |
Hi @jwynharris! Thanks for this. It confirms the UEFI firmware that ships with at least the version of qemu in our released package has some incompatibility with the M3 hardware. I'm working on making a test package to see if there is an update to qemu that fixes this. |
Hello again, I have a test package here: https://multipass-ci.s3.amazonaws.com/pr568/multipass-1.13.0-dev.1245.pr568%2Bgf87e344db.mac-Darwin.pkg I will say, that I'm not real hopeful that this will fix it because the EDK2 firmware in upstream QEMU is the same as in our release package and I believe the problem is with that. That said, perhaps there is a change in qemu itself that does indeed fix it, so 🤞 Please let us know your results. Thanks! |
I filed a seemingly-related issue here: |
@stevenschlansker Thank you filing that upstream qemu issue! It is the same issue. |
No luck unfortunately :( Installed via the package, rebooted. Then ran. Log here: [2023-11-22T09:27:55.493] [info] [daemon] Starting Multipass 1.13.0-dev.1245.pr568+gf87e344db.mac [2023-11-22T09:30:44.535] [debug] [warm-mantis] QMP: {"return": {}} |
Hi @jwynharris, Ok, I was afraid of that and is not unexpected. Thanks for trying and unfortunately, we'll just have to wait for upstream to figure out what the problem is. |
Thanks for all your efforts so far @townsend2010. I assume they know there is an issue and working on a fix? I'll watch this thread so if any update please post here. Happy to test anything :) |
Well, M3's have been out less than a month and the upstream bug was entered less than 24 hours ago (at the time of this writing), so they might be aware, but probably haven't started working on a fix I would say. I will monitor upstream and report here on any activity. |
rancher-sandbox/rancher-desktop#6006 Found this issue where someone alludes to M3 being incompatible with QEMU currently |
Looks like some progress at https://gitlab.com/qemu-project/qemu/-/issues/1990 reported by @stevenschlansker? |
Hello, Here is a quick update to what is happening upstream regarding this issue. It appears there is already a fix in upstream EDK2 (the virtual UEFI firmware) and seems to fix it for M3 users. However, it looks like this same fix is not working reliably on M1 based machines. A developer seems to understand what is going on with this and has made a recommendation on how upstream QEMU should handle this, but there has been no activity after that. 🙂 |
Probably it will better to use Apple Virtualization Framework rather than qemu. Rancher Desktop dit it and it works perfectly on my M3 Pro. The x86_64 emulation is done via Rosetta2 thru the Virtualization Framework. |
@Fred78290 : I agree, but let's get what we have working first. I am sad I can't really put my shiny new M3 Max Macbook to business yet without a proper virtualization solution. |
@lunderhage - yes, and I think multipass will perform better as not going through Rosetta2? |
It appears upstream QEMU has now tagged v8.2.1, so I will begin incorporating that into the Multipass 1.13.1 release. |
Hey all! Here is a test package that hopefully works on all of the Apple silicon types: https://multipass-ci.s3.amazonaws.com/pr583/multipass-1.14.0-dev.1487.pr583%2Bgc432665bc.mac-Darwin.pkg Please try it out and let us know. Thanks! |
Ah, my precious is back. The dry winter is over. On my M3, I successfully launched an instance and shelled in. Thank you!!! |
Ditto
It works on my M3 too. Though my test case was slightly different - I uninstalled the old Multipass by doing sudo sh "/Library/Application Support/com.canonical.multipass/uninstall.sh", but said NO to cleaning up the instances. On installing the new Multipass, I saw that the instance was still running. And I was able to shell into it. |
Update: I launched a new instance, was able to shell into it and stop it. However I could not stop my old instance which was created using the older Multipass. On rebooting the Mac, Multipass list gave the error "list failed: cannot connect to the multipass socket". I also can't uninstall Multipass now using "/Library/Application Support/com.canonical.multipass/uninstall.sh", it says zsh: permission denied: /Library/Application Support/com.canonical.multipass/uninstall.sh. The folder is not present in /Library/Application Support. |
Ah now I am really in a mess. I tried installing it again. But still no luck uninstalling. I looked up #3257, did |
Sorry for the knee jerk desperate updates. Over a combination of reboots, installs, uninstalls and manual file removal, I was finally able to clean all Multipass files. And the UI also is gone. I did a reinstall, launched a test instance and all is well. |
Just tried 1.14.0-dev - I could shell in, but for my particular existing dev environment it didn't quite work as when I tried to boot up my existing Laravel application it could not write to the logs - some permission issue. So I reverted back to 1.11.1 and it all worked fine! When I get more time I will try 1.14 again and see what the issue is. |
qemu 8.2.1 support now Apple silicon M3, tested with homebrew + qemu + limactl and its work. with cpuType = host not cortex-a75 :)
|
Hi @jwynharris!
This is very odd. Please let us know as soon as you can what you have found out. I'm in the process of getting this into the 1.13.1 and if there is a regression, we need to be aware of it. Thanks! |
@townsend2010 I am having a similar issue. When viewing |
Hi @ddemoss-sc! You are hitting some other issue not related to this QEMU issue. In the package version I posted here, there are other changes around mount's file ownership as well. Could you please open a new issue? Thanks! |
When will we see the v1.13.1 release? The milestone says it is 100% completed, but there is still no new release. |
Hi @lunderhage! There was another regression that was just fixed and closed today. I then had to cherry pick this into the release branch and RC packages are being built as I type this. We will then have to sanity test these packages and if all is good, we will submit the packages for signing by our IS team which can take up to 3 days (hopefully shorter when I escalate this). If all goes well, I expect 1.13.1 to be released next week. |
To upgrade to the new version, whats the recommended process?
|
Hi all! Just to let you know, version 1.13.1 has been released that has the fix for this issue. @ssg3d, all you need to do is download and install the package and follow the prompts. |
Just commenting to say that it works on my machine. No issues. |
Thanks, thats simple and it works. I'm now running 1.13.1 and all seems well. |
Same same! Thank you @townsend2010 for seeing this through |
Same for me as well just a little late to this party. Thanks for getting this fixed @townsend2010! |
Hi, I've just installed Multipass 1.14.0 on mac M3 Pro, and the launch command hangs. |
Are running on MacOS sequoia? In this case it's normal Install the 1.15-dev (search in issue) regards |
Thanks @Fred78290, no problem I'll wait for official 1.15. |
See here #3661 (comment) |
Hi, the 1.15 test package does not seem to be available anymore. https://multipass-ci.s3.amazonaws.com/pr661/multipass-1.15.0-dev.2929.pr661%2Bgc67ef6641.mac-Darwin.pkg |
Wrong issue @lucj? Anyway, that's been released (in 1.14.1). |
hi @ricab yes it was the right issue as instances didn't start on macOS m3 :) It's ok now with 1.14.1, thanks 👍 |
I've got a similar issue at least with the "multipass start" command hanging.
I've installed, uninstalled, reinstalled both 1.12.2+mac and 1.13.0-dev.298.ci4858+g5236ad09.mac.
The interesting thing (maybe, as not an expert!) is that in 1.13.0 you see some additional logging and after where it usually hangs we get "Cannot open dhcpd_leases file: No such file or directory".
I've tried creating dhcpd_leases and it still fails as usual after some time but no longer reports that it can't open the file.
I assume it's looking for something useful to be added to that file by the DHCP but it never is and that's what causes the issue? I have restarted the daemons several times, rebooted, anything I can try!
It's a new machine (mbp m3) with the latest os (14.1.1). One of my team got their m2 running this last week with exactly the same setup and no issues here. We have had trouble in the past with the firewall on, but its not turned on my machine.
Any thoughts?
Thank you, Jeremy
Originally posted by @jwynharris in #3303 (comment)
The text was updated successfully, but these errors were encountered: