On 02/11/2023 11:49, Muhammad Usama Anjum wrote:
On 11/2/23 4:45 PM, Ryan Roberts wrote:
On 21/08/2023 15:15, Muhammad Usama Anjum wrote:
[...]
+int init_uffd(void) +{
- struct uffdio_api uffdio_api;
- uffd = syscall(__NR_userfaultfd, O_CLOEXEC | O_NONBLOCK | UFFD_USER_MODE_ONLY);
- if (uffd == -1)
ksft_exit_fail_msg("uffd syscall failed\n");
- uffdio_api.api = UFFD_API;
- uffdio_api.features = UFFD_FEATURE_WP_UNPOPULATED | UFFD_FEATURE_WP_ASYNC |
UFFD_FEATURE_WP_HUGETLBFS_SHMEM;
- if (ioctl(uffd, UFFDIO_API, &uffdio_api))
ksft_exit_fail_msg("UFFDIO_API\n");
- if (!(uffdio_api.api & UFFDIO_REGISTER_MODE_WP) ||
!(uffdio_api.features & UFFD_FEATURE_WP_UNPOPULATED) ||
!(uffdio_api.features & UFFD_FEATURE_WP_ASYNC) ||
!(uffdio_api.features & UFFD_FEATURE_WP_HUGETLBFS_SHMEM))
ksft_exit_fail_msg("UFFDIO_API error %llu\n", uffdio_api.api);
Hi,
I've just noticed that this fails on arm64 because the required features are not available. It's common practice to skip instead of fail for this sort of condition (and that's how all the other uffd tests work). The current fail approach creates noise in our CI.
I see this is already in mm-stable so perhaps we can add a patch to fix on top?
Yeah, we can add a patch to skip all the tests instead of failing here. Let me send a patch this week.
Thats great - thanks for the fast response!
Thanks, Ryan