From 983730bdf1b2b5cae0e755b4c81bf96a9c3bc154 Mon Sep 17 00:00:00 2001 From: Jeremy Cline Date: Wed, 4 Dec 2019 13:51:47 -0500 Subject: Sync up tests with v5.4 --- tests/memory/memfd_create/runtest.sh | 7 ++++--- tests/memory/memfd_create/t_get_seals.c | 3 ++- tests/memory/memfd_create/t_memfd_create.c | 18 +++++++++++------- 3 files changed, 17 insertions(+), 11 deletions(-) (limited to 'tests') diff --git a/tests/memory/memfd_create/runtest.sh b/tests/memory/memfd_create/runtest.sh index 24dfeb5b6..880c3096e 100755 --- a/tests/memory/memfd_create/runtest.sh +++ b/tests/memory/memfd_create/runtest.sh @@ -38,11 +38,12 @@ fi function sanity_memfd_create() { - rlRun "./t_memfd_create memf 1024 gswS &" - rlRun "./t_get_seals /proc/$!/fd/3 > seals" + rlRun "coproc ./t_memfd_create memf 1024 gswS" + rlRun "read -u ${COPROC[0]} MEMFD_PATH" + rlRun "./t_get_seals $MEMFD_PATH > ./seals" rlRun "cat ./seals" rlAssertGrep "SEAL GROW WRITE SHRINK" ./seals - rlRun "pkill t_memfd_create" + rlRun "kill $COPROC_PID" } diff --git a/tests/memory/memfd_create/t_get_seals.c b/tests/memory/memfd_create/t_get_seals.c index 8babe34d2..1a2c900e0 100644 --- a/tests/memory/memfd_create/t_get_seals.c +++ b/tests/memory/memfd_create/t_get_seals.c @@ -16,8 +16,9 @@ * */ -#include +#define _GNU_SOURCE #include +#include #include #include #include diff --git a/tests/memory/memfd_create/t_memfd_create.c b/tests/memory/memfd_create/t_memfd_create.c index 73d641a6e..4250d7174 100644 --- a/tests/memory/memfd_create/t_memfd_create.c +++ b/tests/memory/memfd_create/t_memfd_create.c @@ -16,11 +16,12 @@ * */ -#include -#include +#define _GNU_SOURCE +#include +#include +#include #include #include -#include #include #include @@ -66,10 +67,6 @@ int main(int argc, char *argv[]) if (write(fd, message, strlen(message)) <= 0) errExit("write"); - //printf("PID: %ld; fd: %d; /proc/%ld/fd/%d\n", - // (long) getpid(), fd, (long) getpid(), fd); - printf("/proc/%ld/fd/%d\n", (long) getpid(), fd); - /* Code to map the file and populate the mapping with data omitted */ @@ -92,6 +89,13 @@ int main(int argc, char *argv[]) errExit("fcntl"); } + /* Output the pathname of (a symbolic link to) the file + created by memfd_create() */ + + printf("/proc/%ld/fd/%d\n", (long) getpid(), fd); + + fflush(stdout); + /* Keep running, so that the file created by memfd_create() continues to exist */ -- cgit