-
-
Notifications
You must be signed in to change notification settings - Fork 480
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
bug: Windows 10 x86_64 won't boot on M3 mac #1385
Comments
On my m2 macbook I had to remove "migratable=no" from the CPU variable definition, on lines 468 and 470. I then got to the install screen. Can't do much for your tacos, though. |
Thanks @ymauray Yup! That worked. |
Now all we need to do is let @flexiondotorg do his magic and turn this hack into something beautiful ! |
Step one: Buy a mac. Workaround: Come to my office tomorrow and play with mine. |
What's the purpose of |
I think that with migratable=no QEMU makes the guest CPU more consistent with the host and less basic. Without this option set, it allows for save/load of the VM state, and migration from one version to another. e.g. save state on QEMU 8, upgrade qemu, and load state from that VM on QEMU 9. As the host and guest are different architectures, this passthrough isn't going to work as the feature capabilities of host and guest CPU differ too much. So I am guessing there needs to be a path in that function which sets the CPU flags based on host CPU as well as guest CPU. Probably around line 403, where there's already a host CPU arch check. |
Yep, pretty much the same experience over here, with Windows 11 on an M2 macbook air ! |
Related to this, future quickget will be able to build Windows images, including both development channels & aarch64: quickemu-project/quickget_configs@e0217c2. I don't believe quickemu is capable of booting aarch64 Windows yet, though. |
Correct 👍 But we should totally support that at some point 🙂 |
I somehow have the same on a Fedora 40 host (running on Proxmox (KVM), CPU type Host) running Quickemu through Nix
|
Did some quick testing on my end, with this patch I get it to run. diff --git a/quickemu b/quickemu
index 10154b6..a252f5d 100755
--- a/quickemu
+++ b/quickemu
@@ -363,12 +363,14 @@ function configure_cpu() {
# - macOS check for CPU flag: vmx
# - Linux AMD check for CPU flag: svm
# - Linux Intel check for CPU flag: vmx
+ if ! grep -E "(svm|vmx)" /proc/cpuinfo &>/dev/null; then
case ${MANUFACTURER,,} in
qemu|virtualbox) CPU_MODEL="qemu64"
QEMU_ACCEL="tcg"
HYPERVISOR="${MANUFACTURER,,}";;
*) HYPERVISOR="";;
esac
+ fi Had to run it through NixGL to not end up without VirGL: |
I confirm this bug has not already been reported
Describe the bug
I pulled the tip of git, then ran quickemu, and Windows 10 didn't boot.
qemu-system-x86_64: can't apply global qemu64-x86_64-cpu.migratable=no: Property 'qemu64-x86_64-cpu.migratable' not found
To Reproduce
Steps to reproduce the behavior:
./quickget windows 10
./quickemu --vm windows-10.conf
Expected behavior
A window appears with a perfectly smooth and bare-metal fast emulation of x86_64 Windows.
But I'd take a window of some kind.
Quickemu output
System information
Screenshots
I wish.
Additional context
I like tacos.
The text was updated successfully, but these errors were encountered: