From ed826b3a92dc5cc297991401c523de12c9854077 Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Mon, 31 Jan 2011 13:09:49 -0600 Subject: [PATCH] Enhance sleep hook to watch for device availability Add a sleepdevice= parameter that will watch for the specified device to appear and then move on. This is more flexible than a defined sleep period and prevents needless waiting if the device appears sooner. Signed-off-by: Dan McGee --- hooks/sleep | 15 +++++++++++++-- install/sleep | 3 +++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/hooks/sleep b/hooks/sleep index bade71a..69b53e7 100644 --- a/hooks/sleep +++ b/hooks/sleep @@ -4,6 +4,17 @@ run_hook () if [ -z "${sleeptime}" ] || ! [ "${sleeptime}" -gt 0 ]; then sleeptime=5 fi - msg "Sleeping for ${sleeptime} seconds." - sleep ${sleeptime} + if [ -n "${sleepdevice}" ]; then + msg "Sleeping up to ${sleeptime} seconds for device ${sleepdevice}." + while [ ${sleeptime} -ge 0 ]; do + if [ -b "${sleepdevice}" ]; then + return + fi + sleep 1 + sleeptime=$(expr ${sleeptime} - 1) + done + else + msg "Sleeping for ${sleeptime} seconds." + sleep ${sleeptime} + fi } diff --git a/install/sleep b/install/sleep index f7f82bd..a59d0c3 100644 --- a/install/sleep +++ b/install/sleep @@ -15,5 +15,8 @@ cat <