Disabling tsc flag on windows host allows Broadwell, Haswell and other cpu architectures to boot normally
Host environment:
-
Operating system: Windows 11
-
OS/kernel version:
Windows 11 Version 22H2 -
Architecture: x86_64
-
QEMU flavor: qemu-system-x86_64
-
QEMU version:
10.0.3 -
QEMU command line:
./qemu-system-x86_64.exe -m 4G -M q35 -accel whpx,kernel-irqchip=off -cpu Haswell,-tsc -smp 6 -device usb-tablet -usb -device virtio-vga-gl -display sdl,gl=on -hda D:\Artix.qcow2
Emulated/Virtualized environment:
- Operating system: Any Linux Distro
- Architecture: x86_64
Description of problem:
When attempting to boot a virtual machine with Broadwell, Haswell or any other CPU architectures except Westmere on a Windows 11 host, the system fails to boot (either freezing at grub bootloader or black screen) unless the TSC flag is disabled. Disabling the TSC flag resolves the problem and allows the VM to boot normally.
Steps to reproduce:
- Launch QEMU with the
-cpu broadwellor-cpu Haswellflag on a Windows 11 host. - Observe that the virtual machine fails to boot or experiences instability.
- Disable the TSC flag using
-cpu Haswell,-tsc. - Boot the virtual machine again.
- Notice that the VM boots successfully and runs without issues.
Edited by Jay Patil