#!/bin/bash # Copyright (C) 2010 Karel Zak TS_TOPDIR="${0%/*}/../.." TS_DESC="lock" TS_OPTIONAL="yes" . $TS_TOPDIR/functions.sh ts_init "$*" TESTPROG="$TS_HELPER_LIBMOUNT_LOCK" [ -x $TESTPROG ] || ts_skip "test not compiled" # # Be careful with number of processes. Don't forget that there is time limit # when the mount waits on the mtab lock. If you define too much processes some # of them will fail with timeout. # # Note: the original version (< 2.13) of util-linux is completely useless for # this test (maximum for this old version is NLOOPS=10 and NPROCESSES=5 (2-way # 2GHz machine)). It has terrible performance due a bad timeouts implementation # in lock_mtab(). # NLOOPS=1000 NPROCESSES=50 > $TS_OUTPUT.debug echo 0 > $TS_OUTPUT SYNCTIME=$(( $(date +%s) + 5 )) for id in $(seq 0 $(( $NPROCESSES - 1 ))); do ts_run $TESTPROG --lock --synctime $SYNCTIME $TS_OUTPUT $NLOOPS >> $TS_OUTPUT.debug 2>&1 & done wait ts_finalize