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.

Signed-off-by: Brendan Jackman <jackm...@google.com>
---
 tools/testing/selftests/mm/map_populate.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tools/testing/selftests/mm/map_populate.c 
b/tools/testing/selftests/mm/map_populate.c
index 
5c8a53869b1bd287b09a250edf628a66c25c2439..433e54fb634f793f2eb4c53ba6b791045c9f4986
 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,

-- 
2.48.1.711.g2feabab25a-goog


Reply via email to