Merge branch 'for-next/spectre-bhb' into for-next/core
[linux-block.git] / arch / arm64 / kernel / entry.S
index 4a3a653df07e8fbb52a85c25eb72988cdd8926ef..ede028dee81b09a0b07d91c99123605b3ebc3a0e 100644 (file)
@@ -307,6 +307,7 @@ alternative_else_nop_endif
        str     w21, [sp, #S_SYSCALLNO]
        .endif
 
+#ifdef CONFIG_ARM64_PSEUDO_NMI
        /* Save pmr */
 alternative_if ARM64_HAS_IRQ_PRIO_MASKING
        mrs_s   x20, SYS_ICC_PMR_EL1
@@ -314,12 +315,6 @@ alternative_if ARM64_HAS_IRQ_PRIO_MASKING
        mov     x20, #GIC_PRIO_IRQON | GIC_PRIO_PSR_I_SET
        msr_s   SYS_ICC_PMR_EL1, x20
 alternative_else_nop_endif
-
-       /* Re-enable tag checking (TCO set on exception entry) */
-#ifdef CONFIG_ARM64_MTE
-alternative_if ARM64_MTE
-       SET_PSTATE_TCO(0)
-alternative_else_nop_endif
 #endif
 
        /*
@@ -337,6 +332,7 @@ alternative_else_nop_endif
        disable_daif
        .endif
 
+#ifdef CONFIG_ARM64_PSEUDO_NMI
        /* Restore pmr */
 alternative_if ARM64_HAS_IRQ_PRIO_MASKING
        ldr     x20, [sp, #S_PMR_SAVE]
@@ -346,6 +342,7 @@ alternative_if ARM64_HAS_IRQ_PRIO_MASKING
        dsb     sy                              // Ensure priority change is seen by redistributor
 .L__skip_pmr_sync\@:
 alternative_else_nop_endif
+#endif
 
        ldp     x21, x22, [sp, #S_PC]           // load ELR, SPSR