summaryrefslogtreecommitdiff
path: root/tools/testing
diff options
context:
space:
mode:
authorBrendan Jackman <jackmanb@google.com>2025-03-11 13:18:18 +0000
committerAndrew Morton <akpm@linux-foundation.org>2025-03-16 22:06:39 -0700
commit571a4b62ed63cace383619b0b4ef0c7e012237e1 (patch)
tree6c21973279085392f3f524b03defaaa8558e15a1 /tools/testing
parentbf6d575e24ee91f7ba8a752c0354bb00db1d3bf2 (diff)
downloadlinux-571a4b62ed63cace383619b0b4ef0c7e012237e1.tar.gz
linux-571a4b62ed63cace383619b0b4ef0c7e012237e1.zip
selftests/mm: skip map_populate on weird filesystems
It seems that 9pfs does not allow truncating unlinked files, Mark Brown has noted that NFS may also behave this way. It doesn't seem quite right to call this a "bug" but it's probably a special enough case that it makes sense for the test to just SKIP if it happens. Link: https://lkml.kernel.org/r/20250311-mm-selftests-v4-7-dec210a658f5@google.com Signed-off-by: Brendan Jackman <jackmanb@google.com> Cc: Dev Jain <dev.jain@arm.com> Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com> Cc: Mateusz Guzik <mjguzik@gmail.com> Cc: Shuah Khan <shuah@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'tools/testing')
-rw-r--r--tools/testing/selftests/mm/map_populate.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/testing/selftests/mm/map_populate.c b/tools/testing/selftests/mm/map_populate.c
index 5c8a53869b1b..433e54fb634f 100644
--- a/tools/testing/selftests/mm/map_populate.c
+++ b/tools/testing/selftests/mm/map_populate.c
@@ -87,6 +87,13 @@ int main(int argc, char **argv)
BUG_ON(!ftmp, "tmpfile()");
ret = ftruncate(fileno(ftmp), MMAP_SZ);
+ if (ret < 0 && errno == ENOENT) {
+ /*
+ * This probably means tmpfile() made a file on a filesystem
+ * that doesn't handle temporary files the way we want.
+ */
+ ksft_exit_skip("ftruncate(fileno(tmpfile())) gave ENOENT, weird filesystem?\n");
+ }
BUG_ON(ret, "ftruncate()");
smap = mmap(0, MMAP_SZ, PROT_READ | PROT_WRITE,