  kill basically validates the pid that s a smart way to validate a pid  i will update makefile with kill in a separate cl  there s another case here though where the master could be dead but the pid is valid and does not belong to the master  maybe check the command line as well or cwd of the pid fds etc i believe that it should be considered as unhealthy status of twistd for example  if  make status  returns for a process running  but unhealthy  then puppet or most of system management tool would believe that it is not running  and the following  etc init d buildbot start would fail at the following check we could also update the above python check function  but i believe that the example case you provided should be handled by a separate process checking for the health of a service the pid is valid and does not belong to the master in other words etc init d status should return  running  if a process is running for the service either it is healthy or not if  make status  should not be limited to the usage of  etc init d buildbot  then i would suggest to have another make target for health checking however  once buildbot is migrated to service manager  this makefile will no longer be used 