/linux-6.6.21/tools/testing/selftests/kvm/lib/ |
D | userfaultfd_util.c | 118 struct uffdio_api uffdio_api; in uffd_setup_demand_paging() local 137 uffdio_api.api = UFFD_API; in uffd_setup_demand_paging() 138 uffdio_api.features = 0; in uffd_setup_demand_paging() 139 TEST_ASSERT(ioctl(uffd, UFFDIO_API, &uffdio_api) != -1, in uffd_setup_demand_paging() 141 (uint64_t)uffdio_api.api); in uffd_setup_demand_paging()
|
/linux-6.6.21/tools/testing/selftests/mm/ |
D | hugepage-mremap.c | 64 struct uffdio_api uffdio_api; in register_region_with_uffd() local 74 uffdio_api.api = UFFD_API; in register_region_with_uffd() 75 uffdio_api.features = 0; in register_region_with_uffd() 76 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == -1) { in register_region_with_uffd()
|
D | uffd-common.c | 237 struct uffdio_api uffdio_api; in userfaultfd_open() local 244 uffdio_api.api = UFFD_API; in userfaultfd_open() 245 uffdio_api.features = *features; in userfaultfd_open() 246 if (ioctl(uffd, UFFDIO_API, &uffdio_api)) in userfaultfd_open() 249 if (uffdio_api.api != UFFD_API) in userfaultfd_open() 250 err("UFFDIO_API error: %" PRIu64, (uint64_t)uffdio_api.api); in userfaultfd_open() 252 *features = uffdio_api.features; in userfaultfd_open() 657 struct uffdio_api uffdio_api = { .api = UFFD_API, .features = 0 }; in uffd_get_features() local 671 if (ioctl(fd, UFFDIO_API, &uffdio_api)) { in uffd_get_features() 676 *features = uffdio_api.features; in uffd_get_features()
|
D | mkdirty.c | 273 struct uffdio_api uffdio_api; in test_uffdio_copy() local 293 uffdio_api.api = UFFD_API; in test_uffdio_copy() 294 uffdio_api.features = 0; in test_uffdio_copy() 295 if (ioctl(uffd, UFFDIO_API, &uffdio_api) < 0) { in test_uffdio_copy()
|
D | uffd-unit-tests.c | 125 struct uffdio_api uffdio_api; in test_uffd_api() local 141 uffdio_api.api = 0xab; in test_uffd_api() 142 uffdio_api.features = 0; in test_uffd_api() 143 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == 0) { in test_uffd_api() 149 uffdio_api.api = UFFD_API; in test_uffd_api() 150 uffdio_api.features = BIT_ULL(63); in test_uffd_api() 151 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == 0) { in test_uffd_api() 157 uffdio_api.api = UFFD_API; in test_uffd_api() 158 uffdio_api.features = 0; in test_uffd_api() 159 if (ioctl(uffd, UFFDIO_API, &uffdio_api)) { in test_uffd_api() [all …]
|
D | ksm_functional_tests.c | 340 struct uffdio_api uffdio_api; in test_unmerge_uffd_wp() local 358 uffdio_api.api = UFFD_API; in test_unmerge_uffd_wp() 359 uffdio_api.features = UFFD_FEATURE_PAGEFAULT_FLAG_WP; in test_unmerge_uffd_wp() 360 if (ioctl(uffd, UFFDIO_API, &uffdio_api) < 0) { in test_unmerge_uffd_wp() 364 if (!(uffdio_api.features & UFFD_FEATURE_PAGEFAULT_FLAG_WP)) { in test_unmerge_uffd_wp()
|
/linux-6.6.21/tools/testing/selftests/powerpc/tm/ |
D | tm-signal-pagefault.c | 141 struct uffdio_api uffdio_api; in setup_uf_mem() local 153 uffdio_api.api = UFFD_API; in setup_uf_mem() 154 uffdio_api.features = 0; in setup_uf_mem() 155 if (ioctl(uffd, UFFDIO_API, &uffdio_api) == -1) { in setup_uf_mem()
|
/linux-6.6.21/fs/ |
D | userfaultfd.c | 2038 struct uffdio_api uffdio_api; in userfaultfd_api() local 2045 if (copy_from_user(&uffdio_api, buf, sizeof(uffdio_api))) in userfaultfd_api() 2047 features = uffdio_api.features; in userfaultfd_api() 2049 if (uffdio_api.api != UFFD_API || (features & ~UFFD_API_FEATURES)) in userfaultfd_api() 2055 uffdio_api.features = UFFD_API_FEATURES; in userfaultfd_api() 2057 uffdio_api.features &= in userfaultfd_api() 2061 uffdio_api.features &= ~UFFD_FEATURE_PAGEFAULT_FLAG_WP; in userfaultfd_api() 2064 uffdio_api.features &= ~UFFD_FEATURE_WP_HUGETLBFS_SHMEM; in userfaultfd_api() 2065 uffdio_api.features &= ~UFFD_FEATURE_WP_UNPOPULATED; in userfaultfd_api() 2067 uffdio_api.ioctls = UFFD_API_IOCTLS; in userfaultfd_api() [all …]
|
/linux-6.6.21/tools/testing/selftests/x86/ |
D | test_shadow_stack.c | 484 struct uffdio_api uffdio_api; in test_userfaultfd() local 503 uffdio_api.api = UFFD_API; in test_userfaultfd() 504 uffdio_api.features = 0; in test_userfaultfd() 505 if (ioctl(uffd, UFFDIO_API, &uffdio_api)) in test_userfaultfd()
|
/linux-6.6.21/include/uapi/linux/ |
D | userfaultfd.h | 83 struct uffdio_api) 156 struct uffdio_api { struct
|
/linux-6.6.21/Documentation/admin-guide/mm/ |
D | userfaultfd.rst | 87 ``UFFDIO_API`` ioctl specifying a ``uffdio_api.api`` value set to ``UFFD_API`` (or 89 userland intends to speak on the ``UFFD`` and the ``uffdio_api.features`` 91 requested ``uffdio_api.api`` is spoken also by the running kernel and the 93 ``uffdio_api.features`` and ``uffdio_api.ioctls`` two 64bit bitmasks of 97 The ``uffdio_api.features`` bitmask returned by the ``UFFDIO_API`` ioctl 121 ioctl should be invoked (if present in the returned ``uffdio_api.ioctls`` 333 bits in ``uffdio_api.features`` passed to ``UFFDIO_API`` ioctl:
|
/linux-6.6.21/tools/testing/selftests/bpf/prog_tests/ |
D | bpf_mod_race.c | 66 struct uffdio_api uffd_api = {}; in test_setup_uffd()
|