Lines Matching refs:uffd
132 int uffd; in test_uffd_api() local
138 uffd = uffd_open_dev(UFFD_FLAGS); in test_uffd_api()
140 uffd = uffd_open_sys(UFFD_FLAGS); in test_uffd_api()
141 if (uffd < 0) { in test_uffd_api()
149 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == 0) { in test_uffd_api()
157 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == 0) { in test_uffd_api()
165 if (ioctl(uffd, UFFDIO_API, &uffdio_api)) { in test_uffd_api()
172 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == 0) { in test_uffd_api()
179 close(uffd); in test_uffd_api()
307 static int pagemap_test_fork(int uffd, bool with_event, bool test_pin) in pagemap_test_fork() argument
309 fork_event_args args = { .parent_uffd = uffd, .child_uffd = -1 }; in pagemap_test_fork()
369 if (uffd_register(uffd, area_dst, nr_pages * page_size, in uffd_wp_unpopulated_test()
376 wp_range(uffd, (uint64_t)area_dst, page_size, true); in uffd_wp_unpopulated_test()
381 wp_range(uffd, (uint64_t)area_dst, page_size, false); in uffd_wp_unpopulated_test()
386 wp_range(uffd, (uint64_t)area_dst, page_size, true); in uffd_wp_unpopulated_test()
401 wp_range(uffd, (uint64_t)area_dst, page_size, true); in uffd_wp_unpopulated_test()
416 if (uffd_register(uffd, area_dst, nr_pages * page_size, in uffd_wp_fork_test_common()
424 wp_range(uffd, (uint64_t)area_dst, page_size, true); in uffd_wp_fork_test_common()
427 if (pagemap_test_fork(uffd, with_event, false)) { in uffd_wp_fork_test_common()
458 if (pagemap_test_fork(uffd, with_event, false)) { in uffd_wp_fork_test_common()
465 wp_range(uffd, (uint64_t)area_dst, page_size, false); in uffd_wp_fork_test_common()
475 if (uffd_unregister(uffd, area_dst, nr_pages * page_size)) in uffd_wp_fork_test_common()
496 if (uffd_register(uffd, area_dst, page_size, false, true, false)) in uffd_wp_fork_pin_test_common()
503 wp_range(uffd, (uint64_t)area_dst, page_size, true); in uffd_wp_fork_pin_test_common()
513 uffd_unregister(uffd, area_dst, page_size); in uffd_wp_fork_pin_test_common()
517 if (pagemap_test_fork(uffd, with_event, false)) { in uffd_wp_fork_pin_test_common()
530 if (pagemap_test_fork(uffd, with_event, true)) { in uffd_wp_fork_pin_test_common()
537 if (uffd_unregister(uffd, area_dst, page_size)) in uffd_wp_fork_pin_test_common()
580 if (uffd_register(uffd, area_dst_alias, nr_pages * page_size, in uffd_minor_test_common()
716 if (copy_page(uffd, offset, wp)) in faulting_process()
721 wp_range(uffd, in faulting_process()
788 fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK); in uffd_sigbus_test_common()
790 if (uffd_register(uffd, area_dst, nr_pages * page_size, in uffd_sigbus_test_common()
847 fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK); in uffd_events_test_common()
848 if (uffd_register(uffd, area_dst, nr_pages * page_size, in uffd_events_test_common()
941 uffd_register_detect_zeropage(int uffd, void *addr, uint64_t len) in uffd_register_detect_zeropage() argument
945 if (uffd_register_with_ioctls(uffd, addr, len, true, in uffd_register_detect_zeropage()
958 has_zeropage = uffd_register_detect_zeropage(uffd, area_dst, page_size); in uffd_zeropage_test()
961 uffd_register_detect_zeropage(uffd, area_dst_alias, page_size); in uffd_zeropage_test()
963 if (do_uffdio_zeropage(uffd, has_zeropage)) in uffd_zeropage_test()
968 if (uffd_unregister(uffd, area_dst, page_size)) in uffd_zeropage_test()
971 if (area_dst_alias && uffd_unregister(uffd, area_dst_alias, page_size)) in uffd_zeropage_test()
977 static void uffd_register_poison(int uffd, void *addr, uint64_t len) in uffd_register_poison() argument
982 if (uffd_register_with_ioctls(uffd, addr, len, true, in uffd_register_poison()
990 static void do_uffdio_poison(int uffd, unsigned long offset) in do_uffdio_poison() argument
999 ret = ioctl(uffd, UFFDIO_POISON, &uffdio_poison); in do_uffdio_poison()
1025 copy_page(uffd, offset, false); in uffd_poison_handle_fault()
1027 do_uffdio_poison(uffd, offset); in uffd_poison_handle_fault()
1047 fcntl(uffd, F_SETFL, uffd_flags | O_NONBLOCK); in uffd_poison_test()
1049 uffd_register_poison(uffd, area_dst, poison_pages * page_size); in uffd_poison_test()
1112 if (move_page(uffd, offset, len)) in uffd_move_handle_fault_common()
1146 if (uffd_register(uffd, area_dst, nr_pages * page_size, in uffd_move_test_common()
1372 if (uffd_register(uffd, area_dst, nr_pages * page_size, in uffd_mmap_changing_test()
1391 if (!uffdio_mmap_changing_test_copy(uffd)) in uffd_mmap_changing_test()
1394 if (!uffdio_mmap_changing_test_zeropage(uffd)) in uffd_mmap_changing_test()
1397 if (!uffdio_mmap_changing_test_move(uffd)) in uffd_mmap_changing_test()
1400 if (!uffdio_mmap_changing_test_poison(uffd)) in uffd_mmap_changing_test()
1403 if (!uffdio_mmap_changing_test_continue(uffd)) in uffd_mmap_changing_test()
1410 uffd_consume_message(uffd); in uffd_mmap_changing_test()
1465 ret = uffd_register_with_ioctls(uffd, area_dst, page_size, in do_register_ioctls_test()
1496 if (uffd_unregister(uffd, area_dst, page_size)) in do_register_ioctls_test()