Lines Matching refs:ptr

124 #define do_get_user_call(fn,x,ptr)					\  argument
127 register __inttype(*(ptr)) __val_gu asm("%"_ASM_DX); \
128 __chk_user_ptr(ptr); \
132 : "0" (ptr), "i" (sizeof(*(ptr)))); \
133 (x) = (__force __typeof__(*(ptr))) __val_gu; \
155 #define get_user(x,ptr) ({ might_fault(); do_get_user_call(get_user,x,ptr); }) argument
178 #define __get_user(x,ptr) do_get_user_call(get_user_nocheck,x,ptr) argument
192 #define __put_user_goto_u64(x, ptr, label) \ argument
193 __put_user_goto(x, ptr, "q", "er", label)
217 #define do_put_user_call(fn,x,ptr) \ argument
221 register __typeof__(*(ptr)) __val_pu asm("%"_ASM_AX); \
222 __chk_user_ptr(ptr); \
223 __ptr_pu = (ptr); \
230 [size] "i" (sizeof(*(ptr))) \
252 #define put_user(x, ptr) ({ might_fault(); do_put_user_call(put_user,x,ptr); }) argument
274 #define __put_user(x, ptr) do_put_user_call(put_user_nocheck,x,ptr) argument
276 #define __put_user_size(x, ptr, size, label) \ argument
278 __chk_user_ptr(ptr); \
281 __put_user_goto(x, ptr, "b", "iq", label); \
284 __put_user_goto(x, ptr, "w", "ir", label); \
287 __put_user_goto(x, ptr, "l", "ir", label); \
290 __put_user_goto_u64(x, ptr, label); \
300 #define __get_user_asm_u64(x, ptr, label) do { \ argument
303 __gu_ptr = (const void __user *)(ptr); \
309 #define __get_user_asm_u64(x, ptr, label) \ argument
310 __get_user_asm(x, ptr, "q", "=r", label)
313 #define __get_user_size(x, ptr, size, label) \ argument
315 __chk_user_ptr(ptr); \
319 __get_user_asm(x_u8__, ptr, "b", "=q", label); \
323 __get_user_asm(x, ptr, "w", "=r", label); \
326 __get_user_asm(x, ptr, "l", "=r", label); \
329 __get_user_asm_u64(x, ptr, label); \
347 #define __get_user_asm_u64(x, ptr, retval) \ argument
349 __typeof__(ptr) __ptr = (ptr); \
370 #define __get_user_asm_u64(x, ptr, retval) \ argument
371 __get_user_asm(x, ptr, retval, "q", "=r")
374 #define __get_user_size(x, ptr, size, retval) \ argument
379 __chk_user_ptr(ptr); \
382 __get_user_asm(x_u8__, ptr, retval, "b", "=q"); \
386 __get_user_asm(x, ptr, retval, "w", "=r"); \
389 __get_user_asm(x, ptr, retval, "l", "=r"); \
392 __get_user_asm_u64(x, ptr, retval); \
474 static __must_check __always_inline bool user_access_begin(const void __user *ptr, size_t len) in user_access_begin() argument
476 if (unlikely(!access_ok(ptr,len))) in user_access_begin()
487 #define unsafe_put_user(x, ptr, label) \ argument
488 __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
491 #define unsafe_get_user(x, ptr, err_label) \ argument
493 __inttype(*(ptr)) __gu_val; \
494 __get_user_size(__gu_val, (ptr), sizeof(*(ptr)), err_label); \
495 (x) = (__force __typeof__(*(ptr)))__gu_val; \
498 #define unsafe_get_user(x, ptr, err_label) \ argument
501 __inttype(*(ptr)) __gu_val; \
502 __get_user_size(__gu_val, (ptr), sizeof(*(ptr)), __gu_err); \
503 (x) = (__force __typeof__(*(ptr)))__gu_val; \