cxl: Use radix__flush_all_mm instead of generic flush_all_mm
authorBenjamin Gray <bgray@linux.ibm.com>
Wed, 9 Nov 2022 04:51:08 +0000 (15:51 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 30 Nov 2022 10:46:48 +0000 (21:46 +1100)
The generic implementation of this function isn't really generic (Hash
is not implemented). Unfortunately, the runtime warnings cannot be
replaced with BUILD_BUG's, so it seems safer not to provide a stub in
the first place.

Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
Reviewed-by: Andrew Donnellan <ajd@linux.ibm.com>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221109045112.187069-6-bgray@linux.ibm.com
arch/powerpc/include/asm/mmu_context.h

index c1ea270..57f5017 100644 (file)
@@ -151,8 +151,8 @@ static inline void mm_context_remove_copro(struct mm_struct *mm)
         * nMMU and/or PSL need to be cleaned up.
         *
         * Both the 'copros' and 'active_cpus' counts are looked at in
-        * flush_all_mm() to determine the scope (local/global) of the
-        * TLBIs, so we need to flush first before decrementing
+        * radix__flush_all_mm() to determine the scope (local/global)
+        * of the TLBIs, so we need to flush first before decrementing
         * 'copros'. If this API is used by several callers for the
         * same context, it can lead to over-flushing. It's hopefully
         * not common enough to be a problem.
@@ -164,7 +164,7 @@ static inline void mm_context_remove_copro(struct mm_struct *mm)
         * in-between.
         */
        if (radix_enabled()) {
-               flush_all_mm(mm);
+               radix__flush_all_mm(mm);
 
                c = atomic_dec_if_positive(&mm->context.copros);
                /* Detect imbalance between add and remove */