From: Ruediger Meier <ruediger.meier@xxxxxxxxxxx> Maybe we should add a --daemonize option to flock to cover this use case. Signed-off-by: Ruediger Meier <ruediger.meier@xxxxxxxxxxx> --- tests/ts/misc/flock | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/ts/misc/flock b/tests/ts/misc/flock index b2fc772..39e88de 100755 --- a/tests/ts/misc/flock +++ b/tests/ts/misc/flock @@ -19,6 +19,7 @@ TS_DESC="flock" ts_init "$*" ts_check_test_command "$TS_CMD_FLOCK" +ts_check_prog "ps" function do_lock { @@ -42,10 +43,19 @@ function do_lock { # general lock GEN_OUTPUT="$TS_OUTPUT" START=$(date '+%s') +# running flock in background is not the best usage example $TS_CMD_FLOCK --shared $TS_OUTDIR/lockfile \ bash -c 'echo "Locking"; sleep 3; echo "Unlocking"' \ > $GEN_OUTPUT 2>&1 & +pid=$! +# check for running background process +if [ "$pid" -le "0" ] || ! kill -s 0 "$pid" &>/dev/null; then + ts_die "unable to run flock" +fi +# the lock should be established when flock has a child +timeout 1s bash -c "while [ \$(ps --ppid $pid |wc -l) -lt 2 ]; do sleep 0.1 ;done" \ + || ts_die "timeout waiting for flock child" ts_init_subtest "non-block" do_lock "--nonblock --conflict-exit-code 123" 123 "You will never see this!" -- 1.8.5.6 -- To unsubscribe from this list: send the line "unsubscribe util-linux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html