Under RedHat 5.1 and 5.2 in the procedure killproc() (used during shutdown) the following code appears: # TERM first, then KILL if not dead kill -TERM $pid usleep 100000 if ps h $pid >/dev/null 2>&1 ; then sleep 3 kill -KILL $pid fi i.e., send TERM, see if it's gone away 100ms later, and if not *wait another three seconds* then send KILL (AIUI). This has been giving me 'kill: (nnn) - No such pid' errors during shutdown (not surprisingly).
this is fixed in a later version of initscripts.