Lines Matching refs:uffd
31 int uffd = uffd_desc->uffd; in uffd_handler_thread_fn() local
45 pollfd[0].fd = uffd; in uffd_handler_thread_fn()
79 r = read(uffd, &msg, sizeof(msg)); in uffd_handler_thread_fn()
97 r = uffd_desc->handler(uffd_desc->uffd_mode, uffd, &msg); in uffd_handler_thread_fn()
117 int uffd; in uffd_setup_demand_paging() local
134 uffd = syscall(__NR_userfaultfd, O_CLOEXEC | O_NONBLOCK); in uffd_setup_demand_paging()
135 TEST_ASSERT(uffd >= 0, "uffd creation failed, errno: %d", errno); in uffd_setup_demand_paging()
139 TEST_ASSERT(ioctl(uffd, UFFDIO_API, &uffdio_api) != -1, in uffd_setup_demand_paging()
146 TEST_ASSERT(ioctl(uffd, UFFDIO_REGISTER, &uffdio_register) != -1, in uffd_setup_demand_paging()
155 uffd_desc->uffd = uffd; in uffd_setup_demand_paging()
167 void uffd_stop_demand_paging(struct uffd_desc *uffd) in uffd_stop_demand_paging() argument
172 ret = write(uffd->pipefds[1], &c, 1); in uffd_stop_demand_paging()
175 ret = pthread_join(uffd->thread, NULL); in uffd_stop_demand_paging()
178 close(uffd->uffd); in uffd_stop_demand_paging()
180 close(uffd->pipefds[1]); in uffd_stop_demand_paging()
181 close(uffd->pipefds[0]); in uffd_stop_demand_paging()
183 free(uffd); in uffd_stop_demand_paging()