qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug 1877781] Re: TCG does not support x2APIC emulation


From: Ronald Antony
Subject: [Bug 1877781] Re: TCG does not support x2APIC emulation
Date: Thu, 18 Jun 2020 15:45:32 -0000

If I may be so free:

It seems that QEMU has stopped emphasizing the EMU part of the name, and
is too much focused on virtualization.

My interest is at running legacy operating systems, and as such, they must run 
on foreign CPU platforms. m68 on intel, intel on ARM, etc.
Time doesn't stand still, and reliance on KVM and similar x86-on-x86 tricks, 
which allow the delegation of certain CPU features to the host CPU is going to 
not work going forward.

If the rumored transition of Apple to ARM is going to take place, people
will want to e.g. emulate for testing or legacy purposes a variety of
operating systems, incl. earlier versions of MacOS.

Testing that scenario, i.e. macOS on an ARM board with the lowest
possible CPU capable of running modern macOS, results in these problems
(and of course utter failure achieving the goal):

qemu-system-x86_64: warning: TCG doesn't support requested feature: 
CPUID.01H:ECX.fma [bit 12]
qemu-system-x86_64: warning: TCG doesn't support requested feature: 
CPUID.01H:ECX.avx [bit 28]
qemu-system-x86_64: warning: TCG doesn't support requested feature: 
CPUID.07H:EBX.avx2 [bit 5]
qemu-system-x86_64: warning: TCG doesn't support requested feature: 
CPUID.80000007H:EDX.invtsc [bit 8]
qemu-system-x86_64: warning: TCG doesn't support requested feature: 
CPUID.0DH:EAX.xsavec [bit 1]

And this is emulating a lowly Penryn CPU with the required CPU flags for macOS:
-cpu 
Penryn,vendor=GenuineIntel,+sse3,+sse4.2,+aes,+xsave,+avx,+xsaveopt,+xsavec,+xgetbv1,+avx2,+bmi2,+smep,+bmi1,+fma,+movbe,+invtsc

Attempting to emulate a more feature laden intel CPU results in even
more issues.

I would propose that no CPU should be considered supported unless it can
be fully handled by TCG on a non-native host. KVM, native-on-native etc.
are nice to have, but peripheral to qEMUlation when it boils down to it.

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1877781

Title:
  TCG does not support x2APIC emulation

Status in QEMU:
  New

Bug description:
  This is not a bug so much as a feature request.

  It would be great if there was a pure-software emulation of the x2APIC
  on x86_64, so that it could be used on systems that don't support such
  providing a thing on via a host-based solution (e.g., KVM etc). KVM
  provides this, but that doesn't help if you're working on a machine
  that doesn't support KVM.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1877781/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]