• Home
  • Raw
  • Download

Lines Matching +full:reg +full:- +full:space

16 #include <asm/asm-eva.h>
58 * userspace address. Note that we limit 32-bit userspace to 0x7fff8000 but
60 * we use 0x80000000 here on 32-bit kernels. If a process passes an invalid
61 * address in this range it's the process's problem, not ours :-)
72 #define get_fs() (current_thread_info()->addr_limit)
73 #define set_fs(x) (current_thread_info()->addr_limit = (x))
78 * eva_kernel_access() - determine whether kernel memory access on an EVA system
98 * - "addr" doesn't have any high-bits set
99 * - AND "size" doesn't have any high-bits set
100 * - AND "addr+size" doesn't have any high-bits set
101 * - OR we are in kernel mode.
110 * access_ok: - Checks if a user space pointer is valid
111 * @addr: User space pointer to start of block to check
117 * Checks if a pointer to a block of memory in user space is valid.
123 * checks that the pointer is in the user space range - after calling
124 * this function, memory access functions may still return -EFAULT.
137 * put_user: - Write a simple value into user space.
138 * @x: Value to copy to user space.
139 * @ptr: Destination address, in user space.
144 * This macro copies a single simple value from kernel space to user
145 * space. It supports simple types like char and int, but not larger
148 * @ptr must have pointer-to-simple-variable type, and @x must be assignable
151 * Returns zero on success, or -EFAULT on error.
157 * get_user: - Get a simple variable from user space.
159 * @ptr: Source address, in user space.
164 * This macro copies a single simple variable from user space to kernel
165 * space. It supports simple types like char and int, but not larger
168 * @ptr must have pointer-to-simple-variable type, and the result of
171 * Returns zero on success, or -EFAULT on error.
178 * __put_user: - Write a simple value into user space, with less checking.
179 * @x: Value to copy to user space.
180 * @ptr: Destination address, in user space.
185 * This macro copies a single simple value from kernel space to user
186 * space. It supports simple types like char and int, but not larger
189 * @ptr must have pointer-to-simple-variable type, and @x must be assignable
195 * Returns zero on success, or -EFAULT on error.
201 * __get_user: - Get a simple variable from user space, with less checking.
203 * @ptr: Source address, in user space.
208 * This macro copies a single simple variable from user space to kernel
209 * space. It supports simple types like char and int, but not larger
212 * @ptr must have pointer-to-simple-variable type, and the result of
218 * Returns zero on success, or -EFAULT on error.
246 #define _loadd(reg, addr) "ld " reg ", " addr argument
248 #define _loadw(reg, addr) "lw " reg ", " addr argument
249 #define _loadh(reg, addr) "lh " reg ", " addr argument
250 #define _loadb(reg, addr) "lb " reg ", " addr argument
299 int __gu_err = -EFAULT; \
331 : "0" (0), "o" (__m(addr)), "i" (-EFAULT)); \
362 : "0" (0), "r" (addr), "i" (-EFAULT)); \
382 #define _stored(reg, addr) "ld " reg ", " addr argument
385 #define _storew(reg, addr) "sw " reg ", " addr argument
386 #define _storeh(reg, addr) "sh " reg ", " addr argument
387 #define _storeb(reg, addr) "sb " reg ", " addr argument
442 int __pu_err = -EFAULT; \
470 "i" (-EFAULT)); \
490 "i" (-EFAULT)); \
638 * __clear_user: - Zero a block of memory in user space, with less checking.
639 * @to: Destination address, in user space.
642 * Zero a block of memory in user space. Caller must check
699 * strncpy_from_user: - Copy a NUL terminated string from userspace.
700 * @dst: Destination address, in kernel space. This buffer must be at
702 * @src: Source address, in user space.
705 * Copies a NUL-terminated string from userspace to kernel space.
710 * If access to userspace fails, returns -EFAULT (some data may have been
751 * strnlen_user: - Get the size of a string in user space.
757 * Get the size of a NUL-terminated string in user space.