On Wed, May 17, 2023 at 09:14:02AM +0200, Michal Prívozník wrote:
On 5/16/23 18:32, Andrea Bolognani wrote:
> Last but not least, the way detection has been implemented is not
> accurate: as of today, QEMU does *not* support enabling MTE with KVM.
> Patches adding this feature have been posted[1] and are going to be
> merged soon, but even then just looking at the machine type property
> is not going to be enough to determine whether MTE can actually be
> used.
Then it's a matter of:
+ if (kvm_arm_mte_supported()) {
+ object_class_property_add_bool(oc, "mte", virt_get_mte,
virt_set_mte);
+ object_class_property_set_description(oc, "mte",
+ "Set on/off to enable/disable
emulating a "
+ "guest CPU which implements the ARM
"
+ "Memory Tagging Extension");
+ }
I don't think this would work: even if KVM doesn't support MTE, TCG
can still emulate it, so the property still needs to show up.
Or querying KVM extensions in libvirt (we already do that for some
features).
That would tell us whether KVM itself is MTE-capable, but not whether
the QEMU binary can make use of that feature.
> Committing to any specific interface in libvirt at this point in
time
> feels premature, as it's pretty much guaranteed that it will no
> longer fit once the questions above have been answered.
Fair enough, feel free to revert my patches.
Let's keep the discussion going for now, but if we get very close to
the freeze without a clear consensus on the one you have implemented
being the interface that we want I'll probably post a revert.
--
Andrea Bolognani / Red Hat / Virtualization