__COPY_TO_USER_INATO(9) Memory Management in Linux __COPY_TO_USER_INATO(9)NAME__copy_to_user_inatomic - Copy a block of data into user space, with
unsigned long __must_check __copy_to_user_inatomic(void __user * to,
const void * from,
unsigned long n);
Destination address, in user space.
Source address, in kernel space.
Number of bytes to copy.
User context only.
Copy data from kernel space to user space. Caller must check the
specified block with access_ok before calling this function. The caller
should also make sure he pins the user space address so that we don´t
result in page fault and sleep.
Here we special-case 1, 2 and 4-byte copy_*_user invocations. On a
fault we return the initial request size (1, 2 or 4), as copy_*_user
should do. If a store crosses a page boundary and gets a fault, the x86
will not write anything, so this is accurate.
COPYRIGHTKernel Hackers Manual 2.6. November 2013 __COPY_TO_USER_INATO(9)