mips: clean and reorder the forest of macros...
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 20 Mar 2017 15:51:34 +0000 (11:51 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 6 Apr 2017 06:08:07 +0000 (02:08 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/mips/include/asm/uaccess.h

index 0cd0accdd0faf3a52a15567af821a12520a11dbf..9c05262a85f30fdeb79f00f3f21bbf498f2b2319 100644 (file)
@@ -838,14 +838,60 @@ extern size_t __copy_user(void *__to, const void *__from, size_t __n);
        __cu_len_r;                                                     \
 })
 
+#define __invoke_copy_from_kernel(to, from, n)                         \
+       __invoke_copy_from(__copy_user, to, from, n)
+
+#define __invoke_copy_from_kernel_inatomic(to, from, n)                        \
+       __invoke_copy_from(__copy_user_inatomic, to, from, n)
+
+#define __invoke_copy_to_kernel(to, from, n)                           \
+       __invoke_copy_to(__copy_user, to, from, n)
+
+#define ___invoke_copy_in_kernel(to, from, n)                          \
+       __invoke_copy_from(__copy_user, to, from, n)
+
 #ifndef CONFIG_EVA
+#define __invoke_copy_from_user(to, from, n)                           \
+       __invoke_copy_from(__copy_user, to, from, n)
+
+#define __invoke_copy_from_user_inatomic(to, from, n)                  \
+       __invoke_copy_from(__copy_user_inatomic, to, from, n)
+
 #define __invoke_copy_to_user(to, from, n)                             \
        __invoke_copy_to(__copy_user, to, from, n)
 
-#define __invoke_copy_to_kernel(to, from, n)                           \
-       __invoke_copy_to(__copy_user, to, from, n)
+#define ___invoke_copy_in_user(to, from, n)                            \
+       __invoke_copy_from(__copy_user, to, from, n)
 
-#endif
+#else
+
+/* EVA specific functions */
+
+extern size_t __copy_user_inatomic_eva(void *__to, const void *__from,
+                                      size_t __n);
+extern size_t __copy_from_user_eva(void *__to, const void *__from,
+                                  size_t __n);
+extern size_t __copy_to_user_eva(void *__to, const void *__from,
+                                size_t __n);
+extern size_t __copy_in_user_eva(void *__to, const void *__from, size_t __n);
+
+/*
+ * Source or destination address is in userland. We need to go through
+ * the TLB
+ */
+#define __invoke_copy_from_user(to, from, n)                           \
+       __invoke_copy_from(__copy_from_user_eva, to, from, n)
+
+#define __invoke_copy_from_user_inatomic(to, from, n)                  \
+       __invoke_copy_from(__copy_user_inatomic_eva, to, from, n)
+
+#define __invoke_copy_to_user(to, from, n)                             \
+       __invoke_copy_to(__copy_to_user_eva, to, from, n)
+
+#define ___invoke_copy_in_user(to, from, n)                            \
+       __invoke_copy_from(__copy_in_user_eva, to, from, n)
+
+#endif /* CONFIG_EVA */
 
 /*
  * __copy_to_user: - Copy a block of data into user space, with less checking.
@@ -971,74 +1017,6 @@ extern size_t __copy_user_inatomic(void *__to, const void *__from, size_t __n);
        __cu_len;                                                       \
 })
 
-#ifndef CONFIG_EVA
-
-#define __invoke_copy_from_user(to, from, n)                           \
-       __invoke_copy_from(__copy_user, to, from, n)
-
-#define __invoke_copy_from_kernel(to, from, n)                         \
-       __invoke_copy_from(__copy_user, to, from, n)
-
-/* For userland <-> userland operations */
-#define ___invoke_copy_in_user(to, from, n)                            \
-       __invoke_copy_from(__copy_user, to, from, n)
-
-/* For kernel <-> kernel operations */
-#define ___invoke_copy_in_kernel(to, from, n)                          \
-       __invoke_copy_from(__copy_user, to, from, n)
-
-#define __invoke_copy_from_user_inatomic(to, from, n)                  \
-       __invoke_copy_from(__copy_user_inatomic, to, from, n)
-
-#define __invoke_copy_from_kernel_inatomic(to, from, n)                        \
-       __invoke_copy_from(__copy_user_inatomic, to, from, n)
-
-#else
-
-/* EVA specific functions */
-
-extern size_t __copy_user_inatomic_eva(void *__to, const void *__from,
-                                      size_t __n);
-extern size_t __copy_from_user_eva(void *__to, const void *__from,
-                                  size_t __n);
-extern size_t __copy_to_user_eva(void *__to, const void *__from,
-                                size_t __n);
-extern size_t __copy_in_user_eva(void *__to, const void *__from, size_t __n);
-
-/*
- * Source or destination address is in userland. We need to go through
- * the TLB
- */
-#define __invoke_copy_from_user(to, from, n)                           \
-       __invoke_copy_from(__copy_from_user_eva, to, from, n)
-
-#define __invoke_copy_from_user_inatomic(to, from, n)                  \
-       __invoke_copy_from(__copy_user_inatomic_eva, to, from, n)
-
-#define __invoke_copy_to_user(to, from, n)                             \
-       __invoke_copy_to(__copy_to_user_eva, to, from, n)
-
-#define ___invoke_copy_in_user(to, from, n)                            \
-       __invoke_copy_from(__copy_in_user_eva, to, from, n)
-
-/*
- * Source or destination address in the kernel. We are not going through
- * the TLB
- */
-#define __invoke_copy_from_kernel(to, from, n)                         \
-       __invoke_copy_from(__copy_user, to, from, n)
-
-#define __invoke_copy_from_kernel_inatomic(to, from, n)                        \
-       __invoke_copy_from(__copy_user_inatomic, to, from, n)
-
-#define __invoke_copy_to_kernel(to, from, n)                           \
-       __invoke_copy_to(__copy_user, to, from, n)
-
-#define ___invoke_copy_in_kernel(to, from, n)                          \
-       __invoke_copy_from(__copy_user, to, from, n)
-
-#endif /* CONFIG_EVA */
-
 /*
  * __copy_from_user: - Copy a block of data from user space, with less checking.
  * @to:          Destination address, in kernel space.