powerpc/uaccess: Move get_user_instr helpers in asm/inst.h
authorChristophe Leroy <christophe.leroy@csgroup.eu>
Wed, 10 Mar 2021 17:46:44 +0000 (17:46 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Sat, 3 Apr 2021 10:21:45 +0000 (21:21 +1100)
Those helpers use get_user helpers but they don't participate
in their implementation, so they do not belong to asm/uaccess.h

Move them in asm/inst.h

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/2c6e83581b4fa434aa7cf2fa7714c41e98f57007.1615398265.git.christophe.leroy@csgroup.eu
arch/powerpc/include/asm/inst.h
arch/powerpc/include/asm/uaccess.h

index cc73c12675721c3e699dcc4056db785a5a04d6eb..19e18af2fac9d49586ec30bc5df1b3afb236ac8f 100644 (file)
@@ -4,6 +4,40 @@
 
 #include <asm/ppc-opcode.h>
 
+#ifdef CONFIG_PPC64
+
+#define ___get_user_instr(gu_op, dest, ptr)                            \
+({                                                                     \
+       long __gui_ret = 0;                                             \
+       unsigned long __gui_ptr = (unsigned long)ptr;                   \
+       struct ppc_inst __gui_inst;                                     \
+       unsigned int __prefix, __suffix;                                \
+       __gui_ret = gu_op(__prefix, (unsigned int __user *)__gui_ptr);  \
+       if (__gui_ret == 0) {                                           \
+               if ((__prefix >> 26) == OP_PREFIX) {                    \
+                       __gui_ret = gu_op(__suffix,                     \
+                               (unsigned int __user *)__gui_ptr + 1);  \
+                       __gui_inst = ppc_inst_prefix(__prefix,          \
+                                                    __suffix);         \
+               } else {                                                \
+                       __gui_inst = ppc_inst(__prefix);                \
+               }                                                       \
+               if (__gui_ret == 0)                                     \
+                       (dest) = __gui_inst;                            \
+       }                                                               \
+       __gui_ret;                                                      \
+})
+#else /* !CONFIG_PPC64 */
+#define ___get_user_instr(gu_op, dest, ptr)                            \
+       gu_op((dest).val, (u32 __user *)(ptr))
+#endif /* CONFIG_PPC64 */
+
+#define get_user_instr(x, ptr) \
+       ___get_user_instr(get_user, x, ptr)
+
+#define __get_user_instr(x, ptr) \
+       ___get_user_instr(__get_user, x, ptr)
+
 /*
  * Instruction data type for POWER
  */
index bf625c777aa05f5ee5bb3e547ae0710d204a3f94..8b81535e68d49cee6ca198228de680db8f859746 100644 (file)
@@ -53,40 +53,6 @@ static inline bool __access_ok(unsigned long addr, unsigned long size)
 #define __put_user(x, ptr) \
        __put_user_nocheck((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)))
 
-#ifdef CONFIG_PPC64
-
-#define ___get_user_instr(gu_op, dest, ptr)                            \
-({                                                                     \
-       long __gui_ret = 0;                                             \
-       unsigned long __gui_ptr = (unsigned long)ptr;                   \
-       struct ppc_inst __gui_inst;                                     \
-       unsigned int __prefix, __suffix;                                \
-       __gui_ret = gu_op(__prefix, (unsigned int __user *)__gui_ptr);  \
-       if (__gui_ret == 0) {                                           \
-               if ((__prefix >> 26) == OP_PREFIX) {                    \
-                       __gui_ret = gu_op(__suffix,                     \
-                               (unsigned int __user *)__gui_ptr + 1);  \
-                       __gui_inst = ppc_inst_prefix(__prefix,          \
-                                                    __suffix);         \
-               } else {                                                \
-                       __gui_inst = ppc_inst(__prefix);                \
-               }                                                       \
-               if (__gui_ret == 0)                                     \
-                       (dest) = __gui_inst;                            \
-       }                                                               \
-       __gui_ret;                                                      \
-})
-#else /* !CONFIG_PPC64 */
-#define ___get_user_instr(gu_op, dest, ptr)                            \
-       gu_op((dest).val, (u32 __user *)(ptr))
-#endif /* CONFIG_PPC64 */
-
-#define get_user_instr(x, ptr) \
-       ___get_user_instr(get_user, x, ptr)
-
-#define __get_user_instr(x, ptr) \
-       ___get_user_instr(__get_user, x, ptr)
-
 extern long __put_user_bad(void);
 
 #define __put_user_size(x, ptr, size, retval)                  \