uaccess.h (c95baf12f5077419db01313ab61c2aac007d40cd) | uaccess.h (3ac4a615bdb10ee7df8818ff107f974322e4c190) |
---|---|
1/* 2 * include/asm-xtensa/uaccess.h 3 * 4 * User space memory access functions 5 * 6 * These routines provide basic accessing functions to the user memory 7 * space for the kernel. This header file provides functions such as: 8 * --- 70 unchanged lines hidden (view full) --- 79 long __pu_err; \ 80 __put_user_size((x), (ptr), (size), __pu_err); \ 81 __pu_err; \ 82}) 83 84#define __put_user_check(x, ptr, size) \ 85({ \ 86 long __pu_err = -EFAULT; \ | 1/* 2 * include/asm-xtensa/uaccess.h 3 * 4 * User space memory access functions 5 * 6 * These routines provide basic accessing functions to the user memory 7 * space for the kernel. This header file provides functions such as: 8 * --- 70 unchanged lines hidden (view full) --- 79 long __pu_err; \ 80 __put_user_size((x), (ptr), (size), __pu_err); \ 81 __pu_err; \ 82}) 83 84#define __put_user_check(x, ptr, size) \ 85({ \ 86 long __pu_err = -EFAULT; \ |
87 __typeof__(*(ptr)) *__pu_addr = (ptr); \ | 87 __typeof__(*(ptr)) __user *__pu_addr = (ptr); \ |
88 if (access_ok(__pu_addr, size)) \ 89 __put_user_size((x), __pu_addr, (size), __pu_err); \ 90 __pu_err; \ 91}) 92 93#define __put_user_size(x, ptr, size, retval) \ 94do { \ 95 int __cb; \ --- 79 unchanged lines hidden (view full) --- 175 long __gu_err; \ 176 __get_user_size((x), (ptr), (size), __gu_err); \ 177 __gu_err; \ 178}) 179 180#define __get_user_check(x, ptr, size) \ 181({ \ 182 long __gu_err = -EFAULT; \ | 88 if (access_ok(__pu_addr, size)) \ 89 __put_user_size((x), __pu_addr, (size), __pu_err); \ 90 __pu_err; \ 91}) 92 93#define __put_user_size(x, ptr, size, retval) \ 94do { \ 95 int __cb; \ --- 79 unchanged lines hidden (view full) --- 175 long __gu_err; \ 176 __get_user_size((x), (ptr), (size), __gu_err); \ 177 __gu_err; \ 178}) 179 180#define __get_user_check(x, ptr, size) \ 181({ \ 182 long __gu_err = -EFAULT; \ |
183 const __typeof__(*(ptr)) *__gu_addr = (ptr); \ | 183 const __typeof__(*(ptr)) __user *__gu_addr = (ptr); \ |
184 if (access_ok(__gu_addr, size)) \ 185 __get_user_size((x), __gu_addr, (size), __gu_err); \ 186 else \ 187 (x) = 0; \ 188 __gu_err; \ 189}) 190 191extern long __get_user_bad(void); --- 129 unchanged lines hidden --- | 184 if (access_ok(__gu_addr, size)) \ 185 __get_user_size((x), __gu_addr, (size), __gu_err); \ 186 else \ 187 (x) = 0; \ 188 __gu_err; \ 189}) 190 191extern long __get_user_bad(void); --- 129 unchanged lines hidden --- |