Lines Matching refs:uaddr
806 linux_remap_address(void **uaddr, size_t len)
808 uintptr_t uaddr_val = (uintptr_t)(*uaddr);
814 *uaddr = NULL;
824 *uaddr = NULL;
832 *uaddr = (void *)uaddr_val;
839 linux_copyin(const void *uaddr, void *kaddr, size_t len)
841 if (linux_remap_address(__DECONST(void **, &uaddr), len)) {
842 if (uaddr == NULL)
844 memcpy(kaddr, uaddr, len);
847 return (-copyin(uaddr, kaddr, len));
851 linux_copyout(const void *kaddr, void *uaddr, size_t len)
853 if (linux_remap_address(&uaddr, len)) {
854 if (uaddr == NULL)
856 memcpy(uaddr, kaddr, len);
859 return (-copyout(kaddr, uaddr, len));
865 uint8_t *uaddr = _uaddr;
868 /* make sure uaddr is aligned before going into the fast loop */
869 while (((uintptr_t)uaddr & 7) != 0 && len > 7) {
870 if (subyte(uaddr, 0))
872 uaddr++;
879 if (suword64(uaddr, 0))
882 if (suword32(uaddr, 0))
884 if (suword32(uaddr + 4, 0))
887 uaddr += 8;
893 if (subyte(uaddr, 0))
895 uaddr++;
902 linux_access_ok(const void *uaddr, size_t len)
908 saddr = (uintptr_t)uaddr;
909 eaddr = (uintptr_t)uaddr + len;