[libvirt] [PATCH] Fix initscript to check daemon pidfile
Daniel Veillard
veillard at redhat.com
Fri Nov 13 10:10:42 UTC 2009
On Thu, Nov 12, 2009 at 07:33:30PM +0000, Daniel P. Berrange wrote:
> The libvirtd initscript could get confused between the system and
> session instances of the daemon. To avoid this it is neccessary
> to check the pidfile explicitly.
>
> * daemon/libvirtd.init.in: Always check the pidfile of the system
> daemon to avoid confusion with the session daemons
> ---
> daemon/libvirtd.init.in | 11 ++++++-----
> 1 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/daemon/libvirtd.init.in b/daemon/libvirtd.init.in
> index 43c2d68..071fe2c 100644
> --- a/daemon/libvirtd.init.in
> +++ b/daemon/libvirtd.init.in
> @@ -40,6 +40,7 @@
>
> SERVICE=libvirtd
> PROCESS=libvirtd
> +PIDFILE=@localstatedir@/run/$SERVICE.pid
>
> LIBVIRTD_CONFIG=
> LIBVIRTD_ARGS=
> @@ -59,7 +60,7 @@ start() {
> echo -n $"Starting $SERVICE daemon: "
> mkdir -p @localstatedir@/cache/libvirt
> rm -rf @localstatedir@/cache/libvirt/*
> - KRB5_KTNAME=$KRB5_KTNAME daemon --check $SERVICE $PROCESS --daemon $LIBVIRTD_CONFIG_ARGS $LIBVIRTD_ARGS
> + KRB5_KTNAME=$KRB5_KTNAME daemon --pidfile $PIDFILE --check $SERVICE $PROCESS --daemon $LIBVIRTD_CONFIG_ARGS $LIBVIRTD_ARGS
> RETVAL=$?
> echo
> [ $RETVAL -eq 0 ] && touch @localstatedir@/lock/subsys/$SERVICE
> @@ -68,12 +69,12 @@ start() {
> stop() {
> echo -n $"Stopping $SERVICE daemon: "
>
> - killproc $PROCESS
> + killproc -p $PIDFILE $PROCESS
> RETVAL=$?
> echo
> if [ $RETVAL -eq 0 ]; then
> rm -f @localstatedir@/lock/subsys/$SERVICE
> - rm -f @localstatedir@/run/$SERVICE.pid
> + rm -f $PIDFILE
> rm -rf @localstatedir@/cache/libvirt/*
> fi
> }
> @@ -86,7 +87,7 @@ restart() {
> reload() {
> echo -n $"Reloading $SERVICE configuration: "
>
> - killproc $PROCESS -HUP
> + killproc -p $PIDFILE $PROCESS -HUP
> RETVAL=$?
> echo
> return $RETVAL
> @@ -98,7 +99,7 @@ case "$1" in
> $1
> ;;
> status)
> - status $PROCESS
> + status -p $PIDFILE $PROCESS
> RETVAL=$?
> ;;
> force-reload)
ACK, fairly annoying !
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list