Open arekkusu42 opened 3 months ago
We plan to update QEMU to the latest version in the next release. Do you know if it's fixed upstream?
I do not know; QEMU does not provide Mac binaries, and I do not currently have a build environment to build/test/debug it.
Reviewing the TCG commits I do not see any obvious fix, so I suspect the problem is still there, but as I mentioned, someone needs to reproduce with QEMU TOT. If a new UTM beta with updated QEMU is released before I set up a build environment, I can test it that way.
(updating QEMU should fix this annoying assertion though, so that'd be nice.)
You can use brew install qemu
if you need macOS binaries
If you come from Linux, this may seem normal, but brew is... very far from what I would call "providing Mac binaries". On a Mac, downloading a .dmg and double-clicking the app does not require:
Anyhow... I did set up homebrew (in a Sonoma VM, thank you UTM!) and it installed qemu 8.2.1 (so I can't speak to the 9.0rc or TOT). Then, after copying VMs around and cobbling together invocations, I verified that the three minimal reproducers do NOT crash, in Mavericks or Sierra. I was able to run my ancient (compiled as i386) emulators, inside the qemu-system-x86_64 emulator, inside the UTM arm64-virtualized-on-arm64 Sonoma. Woot.
So, that means that TCG looks fixed, circa QEMU 8.2.1? I guess you should go ahead and update in the next release, and we'll see if anything else in the UTM build causes problems.
As discussed in #5371 and #4990 QEMU 7.2 introduced a TCG regression which:
Until this is resolved, I suggest rolling UTM's QEMU back to 7.1.
I can not find an open QEMU bug tracking this, so possibly they are unaware. The root cause is probably this commit, but I have not debugged it to confirm. It also looks like the TCG i386 emulator has seen many changes after 7.2, so before filing a new bug someone needs to reproduce the problem with a current QEMU release or TOT.
Minimal reproducers are here.