On Fri, 19 May 2023 at 13:55, Alex Bennée <alex.ben...@linaro.org> wrote:
>
>
> Peter Maydell <peter.mayd...@linaro.org> writes:
>
> > From: Cornelia Huck <coh...@redhat.com>
> >
> > Extend the 'mte' property for the virt machine to cover KVM as
> > well. For KVM, we don't allocate tag memory, but instead enable the
> > capability.
> >
> > If MTE has been enabled, we need to disable migration, as we do not
> > yet have a way to migrate the tags as well. Therefore, MTE will stay
> > off with KVM unless requested explicitly.
> >
> > Signed-off-by: Cornelia Huck <coh...@redhat.com>
> > Reviewed-by: Peter Maydell <peter.mayd...@linaro.org>
> > Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
> > Message-id: 20230428095533.21747-2-coh...@redhat.com
> > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org>
>
> I bisected to this commit which causes a segfault on one of my test
> kernels (6.3.2 arm64):
>
>   ➜  ag MTE .config
>   486:CONFIG_ARM64_AS_HAS_MTE=y
>   487:CONFIG_ARM64_MTE=y
>   2949:CONFIG_WLAN_VENDOR_ADMTEK=y
>   3573:# CONFIG_I2C_SIMTEC is not set
>   5278:# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
>   9749:CONFIG_ARCH_USE_MEMTEST=y
>   9750:CONFIG_MEMTEST=y

Try this entirely untested patch?

diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index f6a88e52ac2..f350661a928 100644
--- a/target/arm/cpu.c
+++ b/target/arm/cpu.c
@@ -1593,6 +1593,15 @@ static void arm_cpu_realizefn(DeviceState *dev,
Error **errp)
         }
     }

+    /*
+     * For TCG, we can only present MTE to the guest if the board gave us
+     * tag RAM. Set has_mte appropriately so code below doesn't need to
+     * care whether we're TCG or KVM when deciding if MTE is present.
+     */
+    if (tcg_enabled() || qtest_enabled()) {
+        cpu->has_mte = cpu->tag_memory != NULL;
+    }
+
     if (!tcg_enabled() && !qtest_enabled()) {
         /*
          * We assume that no accelerator except TCG (and the "not really an

(Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> if it
works and you want to turn it into a proper patch...)

-- PMM

Reply via email to