Public bug reported:
Ubuntu 13.04 Raring amd64
On a Xen system with
$ apt-cache policy xen-utils-common | head -2
xen-utils-common:
Installed: 4.2.1-0ubuntu3.2
/etc/init.d/xendomains will hang at start-up or when the service is
(re)started manually.
I've just tracked the Debian bug #680528 down as the cause of an init-
script hang with xen 4.2 when using the xapi toolstack.
The patch used for this bug-fix was implemented too late in the execution of
/etc/init.d/xendomains and results in
a permanently stuck task "/etc/rc2.d/S21xendomains start" which has the child
process "xapi list". The test for xm || xl should have been inserted before
"xen list".
$ ps -efly | egrep '(init.d|rc2.d|/usr/sbin/xapi|xcp-fe)'
S root 1557 1 0 80 0 740 1110 wait 17:26 ? 00:00:00
/bin/sh /etc/init.d/rc 2
S root 1841 1 0 80 0 3368 3395 skb_re 17:26 ? 00:00:00
/usr/sbin/xcp-fe -daemon
S root 2128 1557 0 80 0 1616 4522 wait 17:26 ? 00:00:00
/bin/bash /etc/rc2.d/S21xendomains start
S root 2131 2128 0 80 0 14360 10966 unix_s 17:26 ? 00:00:00
/usr/sbin/xapi list
S root 2142 1 0 80 0 2968 3395 wait 17:26 ? 00:00:00
/usr/sbin/xcp-fe -daemon
S root 2143 2142 0 80 0 27536 186366 poll_s 17:26 ? 00:00:02
/usr/sbin/xapi -nowatchdog list
The first thing the init script does is run the toolstack's "list" command
which is expected to returns true (0) or false. In the case of 'xm' and 'xl'
this is fine but for 'xapi' there is no such command-line option (as it is a
daemon) and consequently it ends up never returning.
----- /etc/init.d/xendomains -----
xen list &> /dev/null
if test $? -ne 0
then
exit 0;
fi
-----
"xen" expands to "/usr/sbin/xapi" via /usr/sbin/xen:
----- /usr/sbin/xen -----
TOOLSTACK=$(. /usr/lib/xen-common/bin/xen-toolstack); RET=$?; [ $RET -eq 0 ] ||
exit $RET
exec "$TOOLSTACK" "$@"
-----
My changes which fix this issue are in-line below, and result in:
$ ps -efly | egrep '(init.d|rc2.d|/usr/sbin/xapi|xcp-fe)'
S root 1876 1 0 80 0 3336 3395 skb_re 19:15 ? 00:00:00
/usr/sbin/xcp-fe -daemon
S root 2172 1 0 80 0 10652 10966 unix_s 19:15 ? 00:00:00
/usr/sbin/xapi -daemon -writereadyfile /var/run/xapi_startup.cookie
-writeinitcomplete /var/run/xapi_init_complete.cookie -onsystemboot
S root 2175 1 0 80 0 2968 3395 wait 19:15 ? 00:00:00
/usr/sbin/xcp-fe -daemon
S root 2176 2175 0 80 0 24800 184294 poll_s 19:15 ? 00:00:00
/usr/sbin/xapi -nowatchdog -writereadyfile /var/run/xapi_startup.cookie
-writeinitcomplete /var/run/xapi_init_complete.cookie -onsystemboot
-----
# diff -u xendomains.bugged xendomains
--- xendomains.bugged 2013-06-26 17:13:17.239660000 +0100
+++ xendomains 2013-06-26 17:14:17.643660000 +0100
@@ -17,12 +17,6 @@
. /lib/init/vars.sh
. /lib/lsb/init-functions
-xen list &> /dev/null
-if test $? -ne 0
-then
- exit 0;
-fi
-
TOOLSTACK=$(/usr/lib/xen-common/bin/xen-toolstack 2>/dev/null)
if [ $? -ne 0 ]; then
log_warning_msg "No usable Xen toolstack selected"
@@ -32,6 +26,12 @@
exit 0
fi
+xen list &> /dev/null
+if test $? -ne 0
+then
+ exit 0;
+fi
+
if ! [ -e /proc/xen/privcmd ]; then
exit 0
fi
** Affects: ubuntu-xen
Importance: Unknown
Status: Unknown
** Affects: xen (Ubuntu)
Importance: Undecided
Status: New
** Bug watch added: Debian Bug tracker #680528
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680528
** Also affects: ubuntu-xen via
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680528
Importance: Unknown
Status: Unknown
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1194983
Title:
xendomains stalls when using XAPI
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-xen/+bug/1194983/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs