From: Christoph Egger <Christoph.Egger@amd.com>
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>, xen-devel@lists.xen.org
Subject: Re: [PATCH v2 5/5] init/NetBSD: move xenbackendd to xend init script
Date: Fri, 27 Jul 2012 14:50:22 +0200 [thread overview]
Message-ID: <50128E8E.9020702@amd.com> (raw)
In-Reply-To: <1343332476-33765-6-git-send-email-roger.pau@citrix.com>
On 07/26/12 21:54, Roger Pau Monne wrote:
> xenbackendd is not needed by the xl toolstack, so move it's launch to
> the xend script.
>
> We have to iterate until we are sure there are no xend processes left,
> since doing a single pkill usually leaves xend processes running.
>
> Changes since v1:
>
> * Use pgrep and pkill instead of the convoluted shell expression.
>
> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
> Cc: Christoph Egger <Christoph.Egger@amd.com>
Acked-by: Christoph Egger <Christoph.Egger@amd.com>
> Signed-off-by: Roger Pau Monne <roger.pau@citrix.com>
> ---
> tools/hotplug/NetBSD/rc.d/xencommons | 29 ++---------------
> tools/hotplug/NetBSD/rc.d/xend | 55 +++++++++++++++++++++++++++++++--
> 2 files changed, 55 insertions(+), 29 deletions(-)
>
> diff --git a/tools/hotplug/NetBSD/rc.d/xencommons b/tools/hotplug/NetBSD/rc.d/xencommons
> index c0d87bf..fe4c9ac 100644
> --- a/tools/hotplug/NetBSD/rc.d/xencommons
> +++ b/tools/hotplug/NetBSD/rc.d/xencommons
> @@ -29,8 +29,6 @@ XENBACKENDD_PIDFILE="/var/run/xenbackendd.pid"
>
> xen_precmd()
> {
> - mkdir -p /var/run/xend || exit 1
> - mkdir -p /var/run/xend/boot || exit 1
> mkdir -p /var/run/xenstored || exit 1
> }
>
> @@ -46,7 +44,7 @@ xen_startcmd()
> XENSTORED_ROOTDIR="/var/lib/xenstored"
> fi
> rm -f ${XENSTORED_ROOTDIR}/tdb* >/dev/null 2>&1
> - printf "Starting xenservices: xenstored, xenconsoled, xenbackendd."
> + printf "Starting xenservices: xenstored, xenconsoled."
> XENSTORED_ARGS=" --pid-file ${XENSTORED_PIDFILE}"
> if [ -n "${XENSTORED_TRACE}" ]; then
> XENSTORED_ARGS="${XENSTORED_ARGS} -T /var/log/xen/xenstored-trace.log"
> @@ -58,7 +56,7 @@ xen_startcmd()
> sleep 1
> done
> else
> - printf "Starting xenservices: xenconsoled, xenbackendd."
> + printf "Starting xenservices: xenconsoled."
> fi
>
> XENCONSOLED_ARGS=""
> @@ -68,13 +66,6 @@ xen_startcmd()
>
> ${SBINDIR}/xenconsoled ${XENCONSOLED_ARGS}
>
> - XENBACKENDD_ARGS=""
> - if [ -n "${XENBACKENDD_DEBUG}" ]; then
> - XENBACKENDD_ARGS="${XENBACKENDD_ARGS} -d"
> - fi
> -
> - ${SBINDIR}/xenbackendd ${XENBACKENDD_ARGS}
> -
> printf "\n"
>
> printf "Setting domain 0 name.\n"
> @@ -87,8 +78,6 @@ xen_stop()
> printf "Stopping xencommons.\n"
> printf "WARNING: Not stopping xenstored, as it cannot be restarted.\n"
>
> - rc_pid=$(check_pidfile ${XENBACKENDD_PIDFILE} ${SBINDIR}/xenbackendd)
> - pids="$pids $rc_pid"
> rc_pid=$(check_pidfile ${XENCONSOLED_PIDFILE} ${SBINDIR}/xenconsoled)
> pids="$pids $rc_pid"
>
> @@ -108,17 +97,12 @@ xen_status()
> pids="$pids $xenconsoled_pid"
> fi
>
> - xenbackend_pid=$(check_pidfile ${XENBACKENDD_PIDFILE} ${SBINDIR}/xenbackendd)
> - if test -n ${xenbackend_pid}; then
> - pids="$pids $xenbackend_pid"
> - fi
> -
> - if test -n "$xenbackend_pid" -a -n "$xenconsoled_pid" -a -n "$xenstored_pid";
> + if test -n "$xenconsoled_pid" -a -n "$xenstored_pid";
> then
> echo "xencommons are running as pids $pids."
> return 0
> fi
> - if test -z "$xenbackend_pid" -a -z "$xenconsoled_pid" -a -z "$xenstored_pid";
> + if test -z "$xenconsoled_pid" -a -z "$xenstored_pid";
> then
> echo "xencommons are not running."
> return 0
> @@ -134,11 +118,6 @@ xen_status()
> else
> echo "xenconsoled is not running."
> fi
> - if test -n $xenbackend_pid; then
> - echo "xenbackendd is running as pid $xenbackend_pid."
> - else
> - echo "xenbackendd is not running."
> - fi
> }
>
> load_rc_config $name
> diff --git a/tools/hotplug/NetBSD/rc.d/xend b/tools/hotplug/NetBSD/rc.d/xend
> index ead9ee0..ac5f2ca 100644
> --- a/tools/hotplug/NetBSD/rc.d/xend
> +++ b/tools/hotplug/NetBSD/rc.d/xend
> @@ -15,10 +15,57 @@ export PATH
>
> name="xend"
> rcvar=$name
> -command="${SBINDIR}/xend"
> -command_args="start"
> -command_interpreter=`head -n 1 ${command} | awk '{ print substr($0,3) }'`
> -sig_stop="SIGKILL"
> +start_precmd="xend_precmd"
> +start_cmd="xend_startcmd"
> +stop_cmd="xend_stop"
> +status_cmd="xend_status"
> +extra_commands="status"
> +required_files="/kern/xen/privcmd"
> +
> +XENBACKENDD_PIDFILE="/var/run/xenbackendd.pid"
> +#XENBACKENDD_DEBUG=1
> +
> +xend_precmd()
> +{
> + mkdir -p /var/run/xend || exit 1
> + mkdir -p /var/run/xend/boot || exit 1
> +}
> +
> +xend_startcmd()
> +{
> + printf "Starting xenbackendd.\n"
> +
> + XENBACKENDD_ARGS=""
> + if [ -n "${XENBACKENDD_DEBUG}" ]; then
> + XENBACKENDD_ARGS="${XENBACKENDD_ARGS} -d"
> + fi
> +
> + ${SBINDIR}/xenbackendd ${XENBACKENDD_ARGS}
> +
> + printf "Starting xend.\n"
> + ${SBINDIR}/xend start >/dev/null 2>&1
> +}
> +
> +xend_stop()
> +{
> + printf "Stopping xenbackendd, xend\n"
> + xb_pid=$(check_pidfile ${XENBACKENDD_PIDFILE} ${SBINDIR}/xenbackendd)
> + if test -n "$xb_pid";
> + then
> + kill -${sig_stop:-TERM} $xb_pid
> + fi
> + while pgrep -f ${SBINDIR}/xend >/dev/null 2>&1; do
> + pkill -${sig_stop:-KILL} -f ${SBINDIR}/xend
> + done
> + wait_for_pids $xb_pid
> + rm -f /var/lock/subsys/xend /var/lock/xend /var/run/xenbackendd.pid
> +}
> +
> +xend_status()
> +{
> + ${SBINDIR}/xend status
> +}
>
> load_rc_config $name
> run_rc_command "$1"
> +
--
---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Einsteinring 24, 85689 Dornach b. Muenchen
Geschaeftsfuehrer: Alberto Bozzo
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632
next prev parent reply other threads:[~2012-07-27 12:50 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-26 19:54 [PATCH v2 0/5] NetBSD: minor fixes and hotplug execution Roger Pau Monne
2012-07-26 19:54 ` [PATCH v2 1/5] tools/build: fix pygrub linking Roger Pau Monne
2012-07-27 8:48 ` Ian Campbell
2012-08-01 11:47 ` Ian Campbell
2012-08-02 5:42 ` Olaf Hering
2012-08-02 6:44 ` Ian Campbell
2012-07-26 19:54 ` [PATCH v2 2/5] libxl: react correctly to POLLHUP Roger Pau Monne
2012-07-27 8:53 ` Ian Campbell
2012-07-27 14:26 ` Ian Jackson
2012-07-27 17:01 ` Ian Jackson
2012-07-31 13:18 ` Ian Campbell
2012-07-31 14:42 ` Ian Jackson
2012-07-27 14:27 ` Ian Jackson
2012-07-26 19:54 ` [PATCH v2 3/5] hotplug/NetBSD: check type of file to attach from params Roger Pau Monne
2012-07-27 14:28 ` Ian Jackson
2012-07-26 19:54 ` [PATCH v2 4/5] libxl: call hotplug scripts from xl for NetBSD Roger Pau Monne
2012-07-27 12:49 ` Christoph Egger
2012-08-01 11:47 ` Ian Campbell
2012-07-26 19:54 ` [PATCH v2 5/5] init/NetBSD: move xenbackendd to xend init script Roger Pau Monne
2012-07-27 12:50 ` Christoph Egger [this message]
2012-07-27 14:29 ` Ian Jackson
2012-07-27 14:49 ` Christoph Egger
2012-08-01 11:47 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50128E8E.9020702@amd.com \
--to=christoph.egger@amd.com \
--cc=ian.jackson@eu.citrix.com \
--cc=roger.pau@citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.