[OE-core] [PATCH] build-perf-test-wrapper.sh: implement locking

Markus Lehtonen markus.lehtonen at linux.intel.com
Thu Feb 2 10:42:12 UTC 2017


In order to prevent multiple instances of the script running at the same
time.

Signed-off-by: Markus Lehtonen <markus.lehtonen at linux.intel.com>
---
 scripts/contrib/build-perf-test-wrapper.sh | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/scripts/contrib/build-perf-test-wrapper.sh b/scripts/contrib/build-perf-test-wrapper.sh
index e03ea97..a4c1929 100755
--- a/scripts/contrib/build-perf-test-wrapper.sh
+++ b/scripts/contrib/build-perf-test-wrapper.sh
@@ -67,6 +67,17 @@ if [ $# -ne 0 ]; then
     exit 1
 fi
 
+# Open a file descriptor for flock and acquire lock
+LOCK_FILE="/tmp/oe-build-perf-test-wrapper.lock"
+if ! exec 3> "$LOCK_FILE"; then
+    echo "ERROR: Unable to open lock file"
+    exit 1
+fi
+if ! flock -n 3; then
+    echo "ERROR: Another instance of this script is running"
+    exit 1
+fi
+
 echo "Running on `uname -n`"
 if ! git_topdir=$(git rev-parse --show-toplevel); then
         echo "The current working dir doesn't seem to be a git clone. Please cd there before running `basename $0`"
-- 
2.10.2




More information about the Openembedded-core mailing list