selftests: add memfd/sealing page-pinning tests 08/32908/1
authorDavid Herrmann <dh.herrmann@gmail.com>
Fri, 8 Aug 2014 21:25:34 +0000 (14:25 -0700)
committerMaciej Wereski <m.wereski@partner.samsung.com>
Mon, 29 Dec 2014 08:31:35 +0000 (09:31 +0100)
commit2d63a8517a762037ed240509d6a2362744748b05
tree6281099e7864cd47421336e3072e475bf3389f71
parent2322196a3b4f6eb6e253aad18853a23a0b1423f0
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>
Change-Id: Ideaf47a24b3522183cbe5ae10c320f7d38e31931
Origin: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=87b2d44026e0e315a7401551e95b189ac4b28217
Backported-by: Maciej Wereski <m.wereski@partner.samsung.com>
Signed-off-by: Maciej Wereski <m.wereski@partner.samsung.com>
tools/testing/selftests/memfd/.gitignore
tools/testing/selftests/memfd/Makefile
tools/testing/selftests/memfd/fuse_mnt.c [new file with mode: 0644]
tools/testing/selftests/memfd/fuse_test.c [new file with mode: 0644]
tools/testing/selftests/memfd/run_fuse_test.sh [new file with mode: 0644]