unsafe_copy_loop(__ucu_dst, __ucu_src, __ucu_len, u8, label);   \
 } while (0)
 
+#define HAVE_GET_KERNEL_NOFAULT
+
+#define __get_kernel_nofault(dst, src, type, err_label)                        \
+do {                                                                   \
+       int __kr_err;                                                   \
+                                                                       \
+       __get_user_size(*((type *)dst), (__force type __user *)src,     \
+                       sizeof(type), __kr_err);                        \
+       if (unlikely(__kr_err))                                         \
+               goto err_label;                                         \
+} while (0)
+
+#define __put_kernel_nofault(dst, src, type, err_label)                        \
+       __put_user_size(*((type *)(src)), (__force type __user *)(dst), \
+                       sizeof(type), err_label)
+
 #endif /* _ASM_X86_UACCESS_H */