diff --git a/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-init b/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-init index 9563d2fc..cd249cfd 100755 --- a/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-init +++ b/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-init @@ -12,6 +12,9 @@ fi source ${XENGUEST_CONF_BASE}/xenguest-manager.conf +# Make sure we properly initialized the Dom0 +/usr/bin/xenguest-manager check-xen || exit $? + # Create guest list guestlist=$(/usr/bin/xenguest-manager list) diff --git a/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-manager b/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-manager index 99975a24..6a10d35d 100755 --- a/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-manager +++ b/meta-arm-autonomy/recipes-extended/xenguest/files/xenguest-manager @@ -566,6 +566,24 @@ case ${cmd} in usage exit 0 ;; + +esac + +# Check if we have a valid Dom0 booted with Xen +ERROR_MSG=$(xl info 2>&1) +if [ $? -ne 0 ]; then + echo "ERROR: Xen environment is not valid!!!" | tee -a ${LOGFILE} + echo "ERROR: Check if Xen has booted and the kernel configuration." \ + | tee -a ${LOGFILE} + echo "ERROR: Output from 'xl info' command:" | tee -a ${LOGFILE} + echo "$ERROR_MSG" | tee -a ${LOGFILE} + exit 1 +fi + +case ${cmd} in + check-xen) + exit 0 + ;; create) guestfile="${arg1}" guestname="${arg2}"