powerpc/8xx: Simplify INVALIDATE_ADJACENT_PAGES_CPU15
authorChristophe Leroy <christophe.leroy@csgroup.eu>
Tue, 24 Nov 2020 15:24:56 +0000 (15:24 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 9 Dec 2020 12:48:12 +0000 (23:48 +1100)
We now have r11 available as a scratch register so
INVALIDATE_ADJACENT_PAGES_CPU15() can be simplified.

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/bdafd651b4ac3a851fd09249f5f3699c50da29f2.1606231483.git.christophe.leroy@csgroup.eu
arch/powerpc/kernel/head_8xx.S

index e5d57018e1a0444c1da15af2de3c565ec053dc02..4d792a8fdc1b0212802d0c6322ad6bf5480227e0 100644 (file)
@@ -180,14 +180,13 @@ SystemCall:
  */
 
 #ifdef CONFIG_8xx_CPU15
-#define INVALIDATE_ADJACENT_PAGES_CPU15(addr)  \
-       addi    addr, addr, PAGE_SIZE;  \
-       tlbie   addr;                   \
-       addi    addr, addr, -(PAGE_SIZE << 1);  \
-       tlbie   addr;                   \
-       addi    addr, addr, PAGE_SIZE
+#define INVALIDATE_ADJACENT_PAGES_CPU15(addr, tmp)     \
+       addi    tmp, addr, PAGE_SIZE;   \
+       tlbie   tmp;                    \
+       addi    tmp, addr, -PAGE_SIZE;  \
+       tlbie   tmp
 #else
-#define INVALIDATE_ADJACENT_PAGES_CPU15(addr)
+#define INVALIDATE_ADJACENT_PAGES_CPU15(addr, tmp)
 #endif
 
 InstructionTLBMiss:
@@ -198,7 +197,7 @@ InstructionTLBMiss:
         * kernel page tables.
         */
        mfspr   r10, SPRN_SRR0  /* Get effective address of fault */
-       INVALIDATE_ADJACENT_PAGES_CPU15(r10)
+       INVALIDATE_ADJACENT_PAGES_CPU15(r10, r11)
        mtspr   SPRN_MD_EPN, r10
 #ifdef CONFIG_MODULES
        mfcr    r11