Retry the ping loop upto 600 times, or approximately 30 seconds, to make
sure the test does hang at start up.

Signed-off-by: Ian Rogers <irog...@google.com>
---
 tools/perf/tests/shell/daemon.sh | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tools/perf/tests/shell/daemon.sh b/tools/perf/tests/shell/daemon.sh
index 61d13c4c64b8..ee4a30ca3f57 100755
--- a/tools/perf/tests/shell/daemon.sh
+++ b/tools/perf/tests/shell/daemon.sh
@@ -127,9 +127,16 @@ daemon_start()
 
        # wait for the session to ping
        local state="FAIL"
+       local retries=0
        while [ "${state}" != "OK" ]; do
                state=`perf daemon ping --config ${config} --session ${session} 
| awk '{ print $1 }'`
                sleep 0.05
+               retries=$((${retries} +1))
+               if [ ${retries} -ge 600 ]; then
+                       echo "FAILED: Timeout waiting for daemon to ping"
+                       daemon_exit ${config}
+                       exit 1
+               fi
        done
 }
 
-- 
2.31.0.rc2.261.g7f71774620-goog

Reply via email to