From 098bc780a2347b5c9d3a4f2b292d9863208522ea Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac Date: Sun, 15 Oct 2023 21:42:20 +0200 Subject: [PATCH] tests: better synchronization --- test/lib/dmsecuretest.c | 2 ++ test/shell/dmsecuretest.sh | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/test/lib/dmsecuretest.c b/test/lib/dmsecuretest.c index 19265bfd4..1026e89fd 100644 --- a/test/lib/dmsecuretest.c +++ b/test/lib/dmsecuretest.c @@ -73,8 +73,10 @@ int main (int argc, char *argv[]) (void) dm_task_run(dmt); (void) dm_task_destroy(dmt); (void) dm_udev_wait(cookie); /* Finish udev processing */ + printf("Created device: %s\n", devname); } + fflush(stdout); /* At this point there should be no memory trace from a secure table line */ #ifdef SLEEP diff --git a/test/shell/dmsecuretest.sh b/test/shell/dmsecuretest.sh index 595f50ff5..04c95f68f 100644 --- a/test/shell/dmsecuretest.sh +++ b/test/shell/dmsecuretest.sh @@ -40,7 +40,11 @@ for j in empty existing ; do "$i" "$dev1" "$DMTEST" >cmdout 2>&1 & PID=$! -sleep .6 +for k in $(seq 1 10); do + lines=$(wc -l < cmdout 2>/dev/null || true) + test "${lines:-0}" = "0" || break + sleep .1 +done # 0 8192 crypt aes-xts-plain64 434e0cbab02ca68ffba9268222c3789d703fe62427b78b308518b3228f6a2122 0 253:0 8192 # crypt device should be loaded @@ -50,7 +54,7 @@ dmsetup status "$DMTEST" gcore "$PID" | tee out || skip # check we capture core while dmsecuretest was already sleeping -grep "nanosleep" out || grep kernel_vsyscall out +grep -e "nanosleep\|kernel_vsyscall" out kill "$PID" || true wait