| 1 |
|
| 2 |
|
| 3 | #include <linux/uaccess.h>
|
| 4 |
|
| 5 | static inline int __get_addr(unsigned long *a, unsigned long *p, bool user)
|
| 6 | {
|
| 7 | return user ? get_user(*a, (unsigned long __user *)p) :
|
| 8 | get_kernel_nofault(*a, p);
|
| 9 | }
|
| 10 |
|
| 11 | static inline int __get_inst16(u16 *i, u16 *p, bool user)
|
| 12 | {
|
| 13 | return user ? get_user(*i, (u16 __user *)p) : get_kernel_nofault(*i, p);
|
| 14 | }
|
| 15 |
|
| 16 | static inline int __get_inst32(u32 *i, u32 *p, bool user)
|
| 17 | {
|
| 18 | return user ? get_user(*i, (u32 __user *)p) : get_kernel_nofault(*i, p);
|
| 19 | }
|