[arch-projects] [initscripts] [PATCH 09/11] functions: Speed up reboot/shutdown by recognizing killall5 exit code 2
Kurt J. Bosch
kjb-temp-2009 at alpenjodel.de
Sat Jul 2 14:44:27 EDT 2011
killall5 returns 2 if it didn't kill any processes. Using this avoids sleeping longer than needed. This saves another up to six seconds of reboot/shutdown/go-single time.
---
functions | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/functions b/functions
index 69f06eb..401e323 100644
--- a/functions
+++ b/functions
@@ -293,13 +293,21 @@ kill_everything() {
# Terminate all processes
stat_busy "Sending SIGTERM To Processes"
- killall5 -15 ${omit_pids[@]/#/-o } &>/dev/null
- sleep 5
+ local i
+ for (( i=0; i<500; i+=25 )); do
+ killall5 -15 ${omit_pids[@]/#/-o } &>/dev/null
+ (( $? == 2 )) && break
+ sleep .25
+ done
stat_done
stat_busy "Sending SIGKILL To Processes"
- killall5 -9 ${omit_pids[@]/#/-o } &>/dev/null
- sleep 1
+ local i
+ for (( i=0; i<100; i+=25 )); do
+ killall5 -9 ${omit_pids[@]/#/-o } &>/dev/null
+ (( $? == 2 )) && break
+ sleep .25
+ done
stat_done
run_hook "$1_postkillall"
--
1.7.1
More information about the arch-projects
mailing list