[Bug 1560342] [NEW] Xen daemon fails to start after intalling xen-utils on Ubuntu Xenial 16.04

Jiandi An anjiandi at quicinc.com
Tue Mar 22 06:39:34 UTC 2016


Public bug reported:

Booted xen 4.6 dom0 and apt-get install xen-utils-4.6

ubuntu at bandera:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu Xenial Xerus (development branch)
Release:        16.04
Codename:       xenial
ubuntu at bandera:~$
ubuntu at bandera:~$
ubuntu at bandera:~$ uname -r
4.2.0+

During boot of xen 4.6 dom0, xen daemon fails to start.

[  OK  ] Started LSB: Xenstore daemon.
         Starting LSB: Xen daemons...
         Starting Authenticate and Authorize Users to Run Privileged Tasks...
[  OK  ] Started Authenticate and Authorize Users to Run Privileged Tasks.
[  OK  ] Started Accounts Service.
[  OK  ] Started Container hypervisor based on LXC - boot time check.
[   29.154842] random: nonblocking pool is initialized
[  OK  ] Started LSB: Apache2 web server.
[FAILED] Failed to start LSB: Xen daemons.
See 'systemctl status xen.service' for details.
         Starting Virtualization daemon...
         Starting LSB: Wrapper to start/stop secondary xen domains...


systemctl status xen.service and journalctl -xe shows "Option xen-domid not supported for this target

root at bandera:~# systemctl status xen.service
[  428.241986] simple_read_from_buffer: ret = 0, count = 2
? xen.service - LSB: Xen daemons
   Loaded: loaded (/etc/init.d/xen; bad; vendor preset: enabled)
   Active: failed (Result: exit-code) since Mon 2016-03-21 23:04:37 UTC; 14s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 5396 ExecStart=/etc/init.d/xen start (code=exited, status=1/FAILURE)
   Memory: 24.7M
   CGroup: /system.slice/xen.service
           mq4653 /usr/lib/xen-4.6/bin/xenconsoled --pid-file=/var/run/xenconsol

Mar 21 23:04:36 bandera systemd[1]: Starting LSB: Xen daemons...
Mar 21 23:04:37 bandera xen[5396]:  * Starting Xen daemons
Mar 21 23:04:37 bandera xen[5396]: Option xen-domid not supported for this target
Mar 21 23:04:37 bandera xen[5396]:    ...fail!
Mar 21 23:04:37 bandera systemd[1]: xen.service: Control process exited, code=exited status =1
Mar 21 23:04:37 bandera systemd[1]: Failed to start LSB: Xen daemons.
Mar 21 23:04:37 bandera systemd[1]: xen.service: Unit entered failed state.
Mar 21 23:04:37 bandera systemd[1]: xen.service: Failed with result 'exit-code'.
root at bandera:~#
root at bandera:~# journalctl -xe
-- Subject: Unit xen.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit xen.service has begun starting up.
Mar 21 23:46:26 bandera xen[5436]:  * Starting Xen daemons
Mar 21 23:46:26 bandera xen[5436]: Option xen-domid not supported for this target
Mar 21 23:46:26 bandera xen[5436]:    ...fail!
Mar 21 23:46:26 bandera systemd[1]: xen.service: Control process exited, code=exited status=1
Mar 21 23:46:26 bandera polkitd(authority=local)[4411]: Unregistered Authentication
Mar 21 23:46:26 bandera systemd[1]: Failed to start LSB: Xen daemons.
-- Subject: Unit xen.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit xen.service has failed.
--
-- The result is failed.
Mar 21 23:46:26 bandera systemd[1]: xen.service: Unit entered failed state.
Mar 21 23:46:26 bandera systemd[1]: xen.service: Failed with result 'exit-code'.
Mar 21 23:46:32 bandera dhclient[5311]: DHCPDISCOVER on eth1 to 255.255.255.255
lines 1512-1534/1534 (END)

/proc/xen is properly mounted upon boot

root at bandera:~# mount
/dev/mmcblk0p2 on / type ext4 (rw,relatime,data=ordered)
devtmpfs on /dev type devtmpfs (rw,relatime,size=465652k,nr_inodes=116413,mode=755)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
  pfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (rw,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb,release_agent=/run/cgmanager/agents/cgm-release-agent.hugetlb)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/cpu type cgroup (rw,nosuid,nodev,noexec,relatime,cpu)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
cgmfs on /run/cgmanager/fs type tmpfs (rw,relatime,size=100k,mode=755)
tmpfs on /run/lxcfs/controllers type tmpfs (rw,relatime,size=100k,mode=700)
cpu on /run/lxcfs/controllers/cpu type cgroup (rw,relatime,cpu)
memory on /run/lxcfs/controllers/memory type cgroup (rw,relatime,memory)
hugetlb on /run/lxcfs/controllers/hugetlb type cgroup (rw,relatime,hugetlb,release_agent=/run/cgmanager/agents/cgm-release-agent.hugetlb)
name=systemd on /run/lxcfs/controllers/name=systemd type cgroup (rw,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
lxcfs on /var/lib/lxcfs type fuse.lxcfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
xenfs on /proc/xen type xenfs (rw,relatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=93224k,mode=700,uid=1000,gid=1000)


Related xen startup scripts are there in /etc/init.d/   such as xencommons xendomains and xenstored

root at bandera:/etc/init.d# ls
README                  libvirt-guests         rpcbind
acpid                   lvm2                   rsync
apache2                 lvm2-lvmetad           rsyslog
apparmor                lvm2-lvmpolld          screen-cleanup
apport                  lxcfs                  sendsigs
atd                     lxd                    single
binfmt-support          mdadm                  skeleton
bootmisc.sh             mdadm-waitidle         ssh
  manager               mountall-bootclean.sh  sysfsutils
cgproxy                 mountall.sh            udev
checkfs.sh              mountdevsubfs.sh       ufw
checkroot-bootclean.sh  mountkernfs.sh         umountfs
checkroot.sh            mountnfs-bootclean.sh  umountiscsi.sh
console-setup           mountnfs.sh            umountnfs.sh
cron                    mysql                  umountroot
cryptdisks              networking             unattended-upgrades
cryptdisks-early        ondemand               urandom
dbus                    open-iscsi             uuidd
ebtables                plymouth               virtlockd
halt                    plymouth-log           virtlogd
hdparm                  postfix                x11-common
hostname.sh             procps                 xen
hwclock.sh              qemu-guest-agent       xen-watchdog
irqbalance              qemu-kvm               xencommons
kexec                   rc                     xendomains
kexec-load              rc.local               xendriverdomain
killprocs               rcS                    xenstored
kmod                    reboot
libvirt-bin             resolvconf


xl info shows

root at bandera:/usr/local/lib# xl info
host                   : bandera
release                : 4.2.0+
version                : #27 SMP PREEMPT Fri Mar 18 17:42:51 CDT 2016
machine                : aarch64
nr_cpus                : 1
max_cpu_id             : 0
nr_nodes               : 1
cores_per_socket       : 1
threads_per_core       : 1
cpu_mhz                : 20
hw_caps                : 00000000:00000000:00000000:00000000:00000000:00000000:00000000:00000000
virt_caps              :
total_memory           : 16335
free_memory            : 15100
sharing_freed_memory   : 0
sharing_used_memory    : 0
outstanding_claims     : 0
free_cpus              : 0
xen_major              : 4
xen_minor              : 6
xen_extra              : .0
xen_version            : 4.6.0
xen_caps               : xen-3.0-aarch64 xen-3.0-armv7l
xen_scheduler          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0x200000
xen_changeset          : Fri Oct 16 20:25:40 2015 -0500 git:2995083-dirty
xen_commandline        : \EFI\BOOT\xen console=adtuart loglvl=all noreboot acpi=force dom0_mem=1024M
cc_compiler            : aarch64-linux-gnu-gcc (crosstool-NG linaro-1.13.1-4.8-2013.12 -
cc_compile_by          : anjiandi
cc_compile_domain      : qualcomm.com
cc_compile_date        : Tue Mar  8 20:01:12 CST 2016
xend_config_format     : 4


xl list shows  dom0's name as (null)

root at bandera:~# xl list
Name                                        ID   Mem VCPUs      State   Time(s)
(null)                                       0  1024     1     r-----      35.4
root at bandera:~#
root at bandera:~#


If manually run xen-init-dom0 to set up Dom0 name, xl list will show Domain-0

root at bandera:/# ./usr/lib/xen-4.6/bin/xen-init-dom0
Done setting up Dom0
root at bandera:/# xl list
Name                                        ID   Mem VCPUs      State   Time(s)
Domain-0                                     0  1024     1     r-----      46.8
root at bandera:/#


Looking at  /etc/init.d/xencommons script, even when manually running it

root at bandera:/# /etc/init.d/xencommons start

It doesn't fall in the  if  ! `${bindir}/xenstore-read -s / >/dev/null
2>&1`  statement  to run xenstored and not running xen-init-dom0 to set
the dom0 name

       if ! `${bindir}/xenstore-read -s / >/dev/null 2>&1`
        then
                test -z "$XENSTORED_ROOTDIR" && XENSTORED_ROOTDIR="/var/lib/xenstored"
                rm -f "$XENSTORED_ROOTDIR"/tdb* &>/dev/null
                test -z "$XENSTORED_TRACE" || XENSTORED_ARGS=" -T /var/log/xen/xenstored-trace.log"

                if [ -n "$XENSTORED" ] ; then
                    echo -n Starting $XENSTORED...
                    $XENSTORED --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
                else
                    echo "No xenstored found"
                    exit 1
                fi

                # Wait for xenstored to actually come up, timing out after 30 seconds
                while [ $time -lt $timeout ] && ! `${bindir}/xenstore-read -s / >/dev/null 2>&1` ; do
                    echo -n .
                    time=$(($time+1))
                    sleep 1
                done
                echo

                # Exit if we timed out
                if ! [ $time -lt $timeout ] ; then
                    echo Could not start xenstored
                    exit 1
                fi

                echo Setting domain 0 name, domid and JSON config...
                ${LIBEXEC_BIN}/xen-init-dom0
        fi


xenstore-ls shows 


root at bandera:/# ./usr/bin/xenstore-ls
tool = ""
 xenstored = ""
local = ""
 domain = ""
  0 = ""
   domid = "0"
   name = "Domain-0"
root at bandera:/#

** Affects: xen (Ubuntu)
     Importance: Undecided
         Status: New

** Attachment added: "Full boot log of xen, dom0, and ubuntu 16.04"
   https://bugs.launchpad.net/bugs/1560342/+attachment/4607161/+files/xen_ubuntu_boot_log.txt

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to xen in Ubuntu.
https://bugs.launchpad.net/bugs/1560342

Title:
  Xen daemon fails to start after intalling xen-utils on Ubuntu Xenial
  16.04

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/xen/+bug/1560342/+subscriptions



More information about the Ubuntu-server-bugs mailing list