mirror of
https://github.com/torvalds/linux.git
synced 2026-05-21 13:27:57 +02:00
selftests/mm: skip guard_regions.uffd tests when uffd is not present
Patch series "Skip mm selftests instead when kernel features are not present", v2. Two guard_regions tests on userfaultfd fail when userfaultfd is not present. Skip them instead. hugevm test reads kernel config to get page table level information and fails when neither /proc/config.gz nor /boot/config-* is present. Skip it instead. This patch (of 2): When userfaultfd is not compiled into kernel, userfaultfd() returns -1, causing guard_regions.uffd tests to fail. Skip the tests instead. Link: https://lkml.kernel.org/r/20250516132938.356627-1-ziy@nvidia.com Link: https://lkml.kernel.org/r/20250516132938.356627-2-ziy@nvidia.com Signed-off-by: Zi Yan <ziy@nvidia.com> Reviewed-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com> Reviewed-by: Pedro Falcato <pfalcato@suse.de> Cc: Adam Sindelar <adam@wowsignal.io> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
c5a9deace6
commit
6d21130312
|
|
@ -1453,8 +1453,21 @@ TEST_F(guard_regions, uffd)
|
|||
|
||||
/* Set up uffd. */
|
||||
uffd = userfaultfd(0);
|
||||
if (uffd == -1 && errno == EPERM)
|
||||
ksft_exit_skip("No userfaultfd permissions, try running as root.\n");
|
||||
if (uffd == -1) {
|
||||
switch (errno) {
|
||||
case EPERM:
|
||||
SKIP(return, "No userfaultfd permissions, try running as root.");
|
||||
break;
|
||||
case ENOSYS:
|
||||
SKIP(return, "userfaultfd is not supported/not enabled.");
|
||||
break;
|
||||
default:
|
||||
ksft_exit_fail_msg("userfaultfd failed with %s\n",
|
||||
strerror(errno));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
ASSERT_NE(uffd, -1);
|
||||
|
||||
ASSERT_EQ(ioctl(uffd, UFFDIO_API, &api), 0);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user