On Tue, 14 Dec 2021 10:21:40 +0000,
Qu Wenruo <quwenruo.btrfs(a)gmx.com> wrote:
On 2021/12/14 17:52, Marc Zyngier wrote:
> The best workaround is to taskset the QEMU process (and I really mean
> the process, not individual threads) to an homogeneous set of CPUs and
> be done with it.
Yeah, that's why the cpuset way is working, as it seems also limiting
the initial "temporary" VM creating to specified CPUs.
Just curious, is there some defined common VM related registers that can
be restore on all cores? (At least for A53 + A72 case).
Most of the registers are common, and most of the feature registers
are actually massaged by KVM to make them look homogeneous if even the
HW isn't. There are however a few registers that need to be exposed to
the guest verbatim, and MIDR_EL1 is the most important one, as it
carries the core 'identity', which an operating system will absolutely
need to implement critical workarounds (and there are no shortage of
them on both A53 and A72).
If completely no, then virtualization is really not even targeted
for
BIG.little designs I guess.
If your use of virtualisation is to be completely abstracted from the
underlying HW, then you are right, that doesn't really work at all.
Not by design, but because all implementations have embarrassing warts
that need some sort of workarounds.
M.
--
Without deviation from the norm, progress is not possible.