aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/memfd/run_fuse_test.sh
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2014-08-08 14:25:34 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2014-08-08 15:57:31 -0700
commit87b2d44026e0e315a7401551e95b189ac4b28217 (patch)
treeae066f8f409be64b9d9ca192d470c0c505b520a9 /tools/testing/selftests/memfd/run_fuse_test.sh
parentselftests: add memfd_create() + sealing tests (diff)
downloadlinux-dev-87b2d44026e0e315a7401551e95b189ac4b28217.tar.xz
linux-dev-87b2d44026e0e315a7401551e95b189ac4b28217.zip
selftests: add memfd/sealing page-pinning tests
Setting SEAL_WRITE is not possible if there're pending GUP users. This commit adds selftests for memfd+sealing that use FUSE to create pending page-references. FUSE is very helpful here in that it allows us to delay direct-IO operations for an arbitrary amount of time. This way, we can force the kernel to pin pages and then run our normal selftests. Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Acked-by: Hugh Dickins <hughd@google.com> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Cc: Ryan Lortie <desrt@desrt.ca> Cc: Lennart Poettering <lennart@poettering.net> Cc: Daniel Mack <zonque@gmail.com> Cc: Andy Lutomirski <luto@amacapital.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'tools/testing/selftests/memfd/run_fuse_test.sh')
-rw-r--r--tools/testing/selftests/memfd/run_fuse_test.sh14
1 files changed, 14 insertions, 0 deletions
diff --git a/tools/testing/selftests/memfd/run_fuse_test.sh b/tools/testing/selftests/memfd/run_fuse_test.sh
new file mode 100644
index 000000000000..69b930e1e041
--- /dev/null
+++ b/tools/testing/selftests/memfd/run_fuse_test.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+if test -d "./mnt" ; then
+ fusermount -u ./mnt
+ rmdir ./mnt
+fi
+
+set -e
+
+mkdir mnt
+./fuse_mnt ./mnt
+./fuse_test ./mnt/memfd
+fusermount -u ./mnt
+rmdir ./mnt