Files
xen/tools/hotplug/Linux/launch-xenstore.in
T
Juergen Gross 2ef6ace428 tools: don't remove tdb data base file before starting xenstored
As xenstored now is always starting with an empty tdb data base there
is no need any longer to remove the file before starting xenstored.

Signed-off-by: Juergen Gross <jgross@suse.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
2017-01-13 12:08:12 +00:00

88 lines
2.4 KiB
Bash

#!/bin/bash
#
# Copyright (c) 2016 SUSE Linux GmbH
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of version 2.1 of the GNU Lesser General Public
# License as published by the Free Software Foundation.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; If not, see <http://www.gnu.org/licenses/>.
#
XENSTORED=@XENSTORED@
. @XEN_SCRIPT_DIR@/hotplugpath.sh
test_xenstore () {
test -f @XEN_RUN_DIR@/xenstored.pid
return $?
}
timeout_xenstore () {
local time=0
local timeout=30
while [ $time -lt $timeout ] && ! test_xenstore ; do
echo -n .
time=$(($time+1))
sleep 1
done
echo
# Exit if we timed out
if ! [ $time -lt $timeout ] ; then
echo "Could not start $@"
return 1
fi
return 0
}
test_xenstore && exit 0
test -f @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons && . @CONFIG_DIR@/@CONFIG_LEAF_DIR@/xencommons
[ "$XENSTORETYPE" = "" ] && XENSTORETYPE=daemon
/bin/mkdir -p @XEN_RUN_DIR@
[ "$XENSTORETYPE" = "daemon" ] && {
[ -z "$XENSTORED_ROOTDIR" ] && XENSTORED_ROOTDIR="@XEN_LIB_STORED@"
[ -z "$XENSTORED_TRACE" ] || XENSTORED_ARGS="$XENSTORED_ARGS -T @XEN_LOG_DIR@/xenstored-trace.log"
[ -z "$XENSTORED" ] && XENSTORED=@XENSTORED@
[ -x "$XENSTORED" ] || {
echo "No xenstored found"
exit 1
}
echo -n Starting $XENSTORED...
$XENSTORED --pid-file @XEN_RUN_DIR@/xenstored.pid $XENSTORED_ARGS
systemd-notify --booted 2>/dev/null || timeout_xenstore $XENSTORED || exit 1
exit 0
}
[ "$XENSTORETYPE" = "domain" ] && {
[ -z "$XENSTORE_DOMAIN_KERNEL" ] && XENSTORE_DOMAIN_KERNEL=@LIBEXEC@/boot/xenstore-stubdom.gz
XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --kernel $XENSTORE_DOMAIN_KERNEL"
[ -z "$XENSTORE_DOMAIN_SIZE" ] && XENSTORE_DOMAIN_SIZE=8
XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --memory $XENSTORE_DOMAIN_SIZE"
[ -z "$XENSTORE_MAX_DOMAIN_SIZE" ] || XENSTORE_DOMAIN_ARGS="$XENSTORE_DOMAIN_ARGS --maxmem $XENSTORE_MAX_DOMAIN_SIZE"
echo -n Starting $XENSTORE_DOMAIN_KERNEL...
${LIBEXEC_BIN}/init-xenstore-domain $XENSTORE_DOMAIN_ARGS || exit 1
systemd-notify --ready 2>/dev/null
exit 0
}
echo "illegal value $XENSTORETYPE for XENSTORETYPE"
exit 1