| From: Brendan Jackman <jackmanb@google.com> |
| Subject: selftests/mm: skip map_populate on weird filesystems |
| Date: Tue, 11 Mar 2025 13:18:18 +0000 |
| |
| 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> |
| --- |
| |
| tools/testing/selftests/mm/map_populate.c | 7 +++++++ |
| 1 file changed, 7 insertions(+) |
| |
| --- a/tools/testing/selftests/mm/map_populate.c~selftests-mm-skip-map_populate-on-weird-filesystems |
| +++ a/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, |
| _ |