···168168#define __copy_to_user_inatomic __copy_to_user169169#define __copy_from_user_inatomic __copy_from_user170170171171-#define copy_to_user_ret(to, from, n, retval) ({ if (copy_to_user(to, from, n))\172172- return retval; })173173-174174-#define copy_from_user_ret(to, from, n, retval) ({ if (copy_from_user(to, from, n))\175175- return retval; })176176-177171static inline unsigned long __must_check178172copy_from_user(void *to, const void __user *from, unsigned long n)179173{
-4
arch/m68k/include/asm/uaccess_no.h
···135135#define __copy_to_user_inatomic __copy_to_user136136#define __copy_from_user_inatomic __copy_from_user137137138138-#define copy_to_user_ret(to,from,n,retval) ({ if (copy_to_user(to,from,n)) return retval; })139139-140140-#define copy_from_user_ret(to,from,n,retval) ({ if (copy_from_user(to,from,n)) return retval; })141141-142138/*143139 * Copy a null terminated string from userspace.144140 */
-15
arch/mn10300/include/asm/uaccess.h
···110110#define __put_user(x, ptr) __put_user_nocheck((x), (ptr), sizeof(*(ptr)))111111#define __get_user(x, ptr) __get_user_nocheck((x), (ptr), sizeof(*(ptr)))112112113113-/*114114- * The "xxx_ret" versions return constant specified in third argument, if115115- * something bad happens. These macros can be optimized for the116116- * case of just returning from the function xxx_ret is used.117117- */118118-119119-#define put_user_ret(x, ptr, ret) \120120- ({ if (put_user((x), (ptr))) return (ret); })121121-#define get_user_ret(x, ptr, ret) \122122- ({ if (get_user((x), (ptr))) return (ret); })123123-#define __put_user_ret(x, ptr, ret) \124124- ({ if (__put_user((x), (ptr))) return (ret); })125125-#define __get_user_ret(x, ptr, ret) \126126- ({ if (__get_user((x), (ptr))) return (ret); })127127-128113struct __large_struct { unsigned long buf[100]; };129114#define __m(x) (*(struct __large_struct *)(x))130115