Package: xen-utils-common Version: 4.3.0-3 Severity: normal Dear Maintainer,
* What led up to the situation? I upgraded my server from squeeze to wheezy and then to jessie. Server is Intel S3200SHV m/b with Intel(R) Core(TM)2 Quad CPU. I'm pretty sure that before that it was running whatever came before squeeze, I forget the name. I was trying to get xen_pciback to work, so I changed from xm to xl by changing /etc/default/xen so that "TOOLSTACK=xl". This was all fine, and xen_pciback now works, but I got an error during boot. I tracked it down to /etc/init.d/dom0weight being hardoded to use xm. Where /etc/init.d/dom0weight comes from I have been unable to ascertain, so I am filing this against xen-utils-common in the hope that someone there will know where this bug ought to be filed. Aplogies for this. * What exactly did you do (or not do) that was effective (or ineffective)? I changed the calls to use xl. * What was the outcome of this action? The boot error is no longer raised. Whether /etc/init.d/dom0weight should be present or not I have no idea. * What outcome did you expect instead? If dom0weight is supposed to be there, I would have thought it would be structured in a similar fashion to /etc/init.d/xen where there is a test for whether xm or xl is being used. -- System Information: Debian Release: jessie/sid APT prefers testing-updates APT policy: (500, 'testing-updates'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 3.13-1-amd64 (SMP w/1 CPU core) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages xen-utils-common depends on: ii gawk 1:4.0.1+dfsg-2.1 ii lsb-base 4.1+Debian12 ii python 2.7.5-5 ii ucf 3.0027+nmu1 ii udev 204-7 ii xenstore-utils 4.3.0-3+b1 xen-utils-common recommends no packages. xen-utils-common suggests no packages. -- Configuration Files: /etc/init.d/xen changed: . /lib/init/vars.sh . /lib/lsb/init-functions XENSTORED_DIR="/var/run/xenstored" [ -r /etc/default/xen ] && . /etc/default/xen [ -r /etc/default/xend ] && . /etc/default/xend PATH=/sbin:/bin:/usr/sbin:/usr/bin DESC="Xen daemons" ROOT=$(/usr/lib/xen-common/bin/xen-dir 2>/dev/null) if [ $? -ne 0 ]; then log_warning_msg "Not running within Xen or no compatible utils" 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" exit 0 fi [ -e "$ROOT"/bin/xend ] && XEND="$ROOT"/bin/xend XENCONSOLED="$ROOT"/bin/xenconsoled XENCONSOLED_PIDFILE="/var/run/xenconsoled.pid" XENSTORED="$ROOT"/bin/xenstored XENSTORED_PIDFILE="/var/run/xenstore.pid" modules_setup() { modprobe xenfs 2>/dev/null modprobe xen-evtchn 2>/dev/null modprobe xen-gntdev 2>/dev/null } xenfs_setup() { [ -e "/proc/xen/capabilities" ] && return 0 log_progress_msg "xenfs" [ -d "/proc/xen" ] || return 1 mount -t xenfs xenfs /proc/xen || return 1 return 0 } capability_check() { [ -e "/proc/xen/capabilities" ] || return 1 grep -q "control_d" /proc/xen/capabilities || return 1 return 0 } env_setup() { [ -d /run/xen ] && return 0 mkdir -m 700 /run/xen } xend_start() { if [ -z "$XEND" ] || [ "$(basename "$TOOLSTACK")" != xm ]; then return 0 fi log_progress_msg "xend" xend_start_real return $? } xend_stop() { if [ -z "$XEND" ] || [ "$(basename "$TOOLSTACK")" != xm ]; then return 0 fi log_progress_msg "xend" xend_stop_real return $? } xend_restart() { if [ -z "$XEND" ] || [ "$(basename "$TOOLSTACK")" != xm ]; then return 0 fi log_progress_msg "xend" xend_stop_real case "$?" in 0|1) xend_start_real case "$?" in 0) ;; *) return 2 ;; esac ;; *) return 2 ;; esac return 0 } xend_start_real() { $XEND status && return 1 $XEND start || return 2 i=0 while [ $i -lt 10 ]; do $XEND status && return 0 || true i=$(($i + 1)) sleep 1 done return 2 } xend_stop_real() { log_progress_msg "xend" $XEND status || return 0 $XEND stop || return 1 } xenconsoled_start() { log_progress_msg "xenconsoled" xenconsoled_start_real return $? } xenconsoled_stop() { log_progress_msg "xenconsoled" xenconsoled_stop_real return $? } xenconsoled_restart() { log_progress_msg "xenconsoled" xenconsoled_stop_real case "$?" in 0|1) xenconsoled_start_real case "$?" in 0) ;; *) return 2 ;; esac ;; *) return 2 ;; esac return 0 } xenconsoled_start_real() { start-stop-daemon --start --quiet --pidfile "$XENCONSOLED_PIDFILE" --exec "$XENCONSOLED" --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile "$XENCONSOLED_PIDFILE" --exec "$XENCONSOLED" -- \ $XENCONSOLED_ARGS --pid-file="$XENCONSOLED_PIDFILE" \ || return 2 } xenconsoled_stop_real() { start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile "$XENCONSOLED_PIDFILE" --name xenconsoled RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec "$XENCONSOLED" [ "$?" = 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" } xenstored_start() { log_progress_msg "xenstored" start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec "$XENSTORED" --test > /dev/null \ || return 1 [ -d "$XENSTORED_DIR" ] || mkdir -p "$XENSTORED_DIR" export XENSTORED_ROOTDIR="$XENSTORED_DIR" start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec "$XENSTORED" -- \ $XENSTORED_ARGS --pid-file="$XENSTORED_PIDFILE" \ || return 2 xenstore-write "/local/domain/0/name" "Domain-0" } case "$1" in start) log_daemon_msg "Starting $DESC" modules_setup xenfs_setup case "$?" in 0) ;; *) log_end_msg 1; exit ;; esac capability_check case "$?" in 0) ;; *) log_end_msg 255; exit ;; esac env_setup xenstored_start case "$?" in 0|1) ;; *) log_end_msg 1; exit ;; esac xenconsoled_start case "$?" in 0|1) ;; *) log_end_msg 1; exit ;; esac xend_start case "$?" in 0|1) ;; *) log_end_msg 1; exit ;; esac log_end_msg 0 ;; stop) capability_check case "$?" in 0) ;; *) exit ;; esac log_daemon_msg "Stopping $DESC" ret=0 xend_stop case "$?" in 0|1) ;; *) ret=1 ;; esac xenconsoled_stop case "$?" in 0|1) ;; *) ret=1 ;; esac log_end_msg $ret ;; restart|force-reload) capability_check case "$?" in 0) ;; *) exit ;; esac log_daemon_msg "Restarting $DESC" ret=0 xend_restart case "$?" in 0|1) ;; *) ret=1 ;; esac xenconsoled_restart case "$?" in 0|1) ;; *) ret=1 ;; esac log_end_msg $ret ;; *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2 exit 3 ;; esac exit 0 /etc/init.d/xendomains changed: . /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" exit 0 fi if [ "$(basename "$TOOLSTACK")" != xm ] && [ "$(basename "$TOOLSTACK")" != xl ]; then exit 0 fi if ! [ -e /proc/xen/privcmd ]; then exit 0 fi [ -r /etc/default/xendomains ] && . /etc/default/xendomains shopt -s nullglob check_config_name() { xen create --quiet --dryrun --defconfig "$1" | sed -n 's/^.*(name \(.*\))$/\1/p' } check_running() { xen domid "$1" > /dev/null 2>&1 return $? } timeout_coproc() { local TIMEOUT=$1 shift coproc "$@" 2>&1 1>/dev/null local COPROC_OUT exec {COPROC_OUT}<&"${COPROC[0]}" local PID="$COPROC_PID" for no in $(seq 0 $TIMEOUT); do if [ -z "$COPROC_PID" ]; then break; fi sleep 1 log_action_cont_msg done kill -INT "$COPROC_PID" >/dev/null 2>&1 wait $PID local rc=$? log_action_end_msg $rc [ $rc -gt 0 ] && cat <&$COPROC_OUT exec <&$COPROC_OUT- } timeout_domain() { name="$1" TIMEOUT="$2" for no in $(seq 0 $TIMEOUT); do if ! check_running "$name"; then return 0; fi sleep 1 log_action_cont_msg done return 1 } do_start_restore() { [ -n "$XENDOMAINS_SAVE" ] || return [ -d "$XENDOMAINS_SAVE" ] || return [ -n "$XENDOMAINS_RESTORE" ] || return for file in $XENDOMAINS_SAVE/*; do if [ -f $file ] ; then name="${file##*/}" log_action_begin_msg "Restoring Xen domain $name (from $file)" out=$(xen restore "$file" 2>&1 1>/dev/null) case "$?" in 0) rm "$file" domains[$name]='started' log_action_end_msg 0 ;; *) domains[$name]='failed' log_action_end_msg 1 echo "$out" ;; esac fi done } do_start_auto() { [ -n "$XENDOMAINS_AUTO" ] || return [ -d "$XENDOMAINS_AUTO" ] || return for file in $XENDOMAINS_AUTO/*; do name="$(check_config_name $file)" if [ "${domains[$name]}" = started ]; then : elif check_running "$name"; then log_action_msg "Xen domain $name already running" else log_action_begin_msg "Starting Xen domain $name (from $file)" if [ "${domains[$name]}" = failed ]; then log_action_end_msg 1 "restore failed" else out=$(xen create --quiet --defconfig "$file" 2>&1 1>/dev/null) case "$?" in 0) log_action_end_msg 0 ;; *) log_action_end_msg 1 echo "$out" ;; esac fi fi done } do_start() { declare -A domains do_start_restore do_start_auto } do_stop_migrate() { [ -n "$XENDOMAINS_MIGRATE" ] || return while read id name rest; do log_action_begin_msg "Migrating Xen domain $name ($id)" (timeout_coproc "$XENDOMAINS_STOP_MAXWAIT" xen migrate $id $XENDOMAINS_MIGRATE) done < <(/usr/lib/xen-common/bin/xen-init-list) } do_stop_save() { [ -n "$XENDOMAINS_SAVE" ] || return [ -d "$XENDOMAINS_SAVE" ] || mkdir -m 0700 -p "$XENDOMAINS_SAVE" while read id name rest; do log_action_begin_msg "Saving Xen domain $name ($id)" (timeout_coproc "$XENDOMAINS_STOP_MAXWAIT" xen save $id $XENDOMAINS_SAVE/$name) done < <(/usr/lib/xen-common/bin/xen-init-list) } do_stop_shutdown() { while read id name rest; do log_action_begin_msg "Shutting down Xen domain $name ($id)" xen shutdown $id 2>&1 1>/dev/null log_action_end_msg $? done < <(/usr/lib/xen-common/bin/xen-init-list) while read id name rest; do log_action_begin_msg "Waiting for Xen domain $name ($id) to shut down" timeout_domain "$name" "$XENDOMAINS_STOP_MAXWAIT" log_action_end_msg $? done < <(/usr/lib/xen-common/bin/xen-init-list) } do_stop() { do_stop_migrate do_stop_save do_stop_shutdown } case "$1" in start) do_start ;; stop) do_stop ;; restart) do_stop do_start ;; reload|force-reload) do_stop do_start ;; *) echo "Usage: $0 {start|stop|restart|reload|force-reload}" exit 3 ;; esac exit 0 /etc/xen/xend-config.sxp changed: (vif-script vif-bridge) (dom0-min-mem 2048) (enable-dom0-ballooning no) (total_available_memory 0) (dom0-cpus 0) (vncpasswd '') /etc/xen/xl.conf changed: autoballoon=0 -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org