access-helper.h 514 B

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