]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ARM: move is_permission_fault() and is_translation_fault() to fault.h
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Fri, 5 Dec 2025 15:25:24 +0000 (15:25 +0000)
committerRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Mon, 2 Mar 2026 11:20:06 +0000 (11:20 +0000)
is_permission_fault() and is_translation_fault() are both conditional
on the FSR encodings, which are dependent on LPAE. We define the
constants in fault.h. Move these inline functions to fault.h to be
near the FSR definitions.

Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
arch/arm/mm/fault.c
arch/arm/mm/fault.h

index 0f3b6cc516c1f3714405809ce57c495adff8fe6b..e62cc4be5adf651cd331dab30a2a9c3488dd20db 100644 (file)
@@ -115,32 +115,6 @@ static inline bool is_write_fault(unsigned int fsr)
        return (fsr & FSR_WRITE) && !(fsr & FSR_CM);
 }
 
-static inline bool is_translation_fault(unsigned int fsr)
-{
-       int fs = fsr_fs(fsr);
-#ifdef CONFIG_ARM_LPAE
-       if ((fs & FS_MMU_NOLL_MASK) == FS_TRANS_NOLL)
-               return true;
-#else
-       if (fs == FS_L1_TRANS || fs == FS_L2_TRANS)
-               return true;
-#endif
-       return false;
-}
-
-static inline bool is_permission_fault(unsigned int fsr)
-{
-       int fs = fsr_fs(fsr);
-#ifdef CONFIG_ARM_LPAE
-       if ((fs & FS_MMU_NOLL_MASK) == FS_PERM_NOLL)
-               return true;
-#else
-       if (fs == FS_L1_PERM || fs == FS_L2_PERM)
-               return true;
-#endif
-       return false;
-}
-
 static void die_kernel_fault(const char *msg, struct mm_struct *mm,
                             unsigned long addr, unsigned int fsr,
                             struct pt_regs *regs)
index e8f8c190254442a015a6cbc179602589cfddb0ea..e95f44757dc96e7f746dab7e4bdd4d0f56e725d7 100644 (file)
@@ -35,6 +35,32 @@ static inline int fsr_fs(unsigned int fsr)
 }
 #endif
 
+static inline bool is_translation_fault(unsigned int fsr)
+{
+       int fs = fsr_fs(fsr);
+#ifdef CONFIG_ARM_LPAE
+       if ((fs & FS_MMU_NOLL_MASK) == FS_TRANS_NOLL)
+               return true;
+#else
+       if (fs == FS_L1_TRANS || fs == FS_L2_TRANS)
+               return true;
+#endif
+       return false;
+}
+
+static inline bool is_permission_fault(unsigned int fsr)
+{
+       int fs = fsr_fs(fsr);
+#ifdef CONFIG_ARM_LPAE
+       if ((fs & FS_MMU_NOLL_MASK) == FS_PERM_NOLL)
+               return true;
+#else
+       if (fs == FS_L1_PERM || fs == FS_L2_PERM)
+               return true;
+#endif
+       return false;
+}
+
 void do_bad_area(unsigned long addr, unsigned int fsr, struct pt_regs *regs);
 void early_abt_enable(void);
 asmlinkage void do_DataAbort(unsigned long addr, unsigned int fsr,