hc
2024-05-10 10ebd8556b7990499c896a550e3d416b444211e6
kernel/arch/sh/include/asm/uaccess.h
....@@ -21,7 +21,7 @@
2121 unsigned long __ao_end = __ao_a + __ao_b - !!__ao_b; \
2222 __ao_end >= __ao_a && __addr_ok(__ao_end); })
2323
24
-#define access_ok(type, addr, size) \
24
+#define access_ok(addr, size) \
2525 (__chk_user_ptr(addr), \
2626 __access_ok((unsigned long __force)(addr), (size)))
2727
....@@ -69,7 +69,7 @@
6969 long __gu_err = -EFAULT; \
7070 unsigned long __gu_val = 0; \
7171 const __typeof__(*(ptr)) *__gu_addr = (ptr); \
72
- if (likely(access_ok(VERIFY_READ, __gu_addr, (size)))) \
72
+ if (likely(access_ok(__gu_addr, (size)))) \
7373 __get_user_size(__gu_val, __gu_addr, (size), __gu_err); \
7474 (x) = (__force __typeof__(*(ptr)))__gu_val; \
7575 __gu_err; \
....@@ -90,17 +90,13 @@
9090 long __pu_err = -EFAULT; \
9191 __typeof__(*(ptr)) __user *__pu_addr = (ptr); \
9292 __typeof__(*(ptr)) __pu_val = x; \
93
- if (likely(access_ok(VERIFY_WRITE, __pu_addr, size))) \
93
+ if (likely(access_ok(__pu_addr, size))) \
9494 __put_user_size(__pu_val, __pu_addr, (size), \
9595 __pu_err); \
9696 __pu_err; \
9797 })
9898
99
-#ifdef CONFIG_SUPERH32
10099 # include <asm/uaccess_32.h>
101
-#else
102
-# include <asm/uaccess_64.h>
103
-#endif
104100
105101 extern long strncpy_from_user(char *dest, const char __user *src, long count);
106102
....@@ -135,8 +131,7 @@
135131 void __user * __cl_addr = (addr); \
136132 unsigned long __cl_size = (n); \
137133 \
138
- if (__cl_size && access_ok(VERIFY_WRITE, \
139
- ((unsigned long)(__cl_addr)), __cl_size)) \
134
+ if (__cl_size && access_ok(__cl_addr, __cl_size)) \
140135 __cl_size = __clear_user(__cl_addr, __cl_size); \
141136 \
142137 __cl_size; \