#!/bin/sh -
# @configure_input@
-# Copyright (C) 2008-2015 Red Hat Inc.
+# Copyright (C) 2008-2017 Red Hat Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
dmi=$(LANG=C dmidecode 2>&1)
# Architecture.
-# Note for the purpose of testing, we only call uname with -p option.
+# Note for the purpose of testing, we only call uname with -m option.
-arch=$(uname -p | sed -e 's/i.86/i386/' | sed -e 's/arm.*/arm/')
+arch=$(uname -m | sed -e 's/i.86/i386/' | sed -e 's/arm.*/arm/')
# Check for VMware.
# cpuid check added by Chetan Loke.
# Check for Xen.
-if [ "$cpuid" = "XenVMMXenVMM" ]; then
+if [ "$cpuid" = "XenVMMXenVMM" ] &&
+ ! echo "$dmi" | grep -q 'No SMBIOS nor DMI entry point found, sorry'; then
echo xen; echo xen-hvm
# Check for AWS
if echo "$dmi" | grep -q 'Version: [0-9]\.[0-9]\.amazon'; then
# option, since /proc/cpuinfo will not contain the QEMU
# string. QEMU 2.10 added a new CPUID leaf, so this
# problem only triggered for older QEMU
- if grep -q 'QEMU' "${root}/proc/cpuinfo"; then
+ if have_cpuinfo && grep -q 'QEMU' "${root}/proc/cpuinfo"; then
echo qemu
fi
fi
# example /proc/ppc64/lparcfg systemtype line
# system_type=IBM pSeries (emulated by qemu)
-if [ "$arch" = "ppc64" ]; then
+if [ "$arch" = "ppc64" ] || [ "$arch" = "ppc64le" ] ; then
if have_cpuinfo && grep -q 'platform.**pSeries' "${root}/proc/cpuinfo"; then
if grep -q 'model.*emulated by qemu' "${root}/proc/cpuinfo"; then
echo ibm_power-kvm
fi
# Check for LDoms
-if [[ "$arch" == sparc* && -e ${root}/dev/mdesc ]]; then
+if [ "${arch#sparc}" != "$arch" ] && [ -e "${root}/dev/mdesc" ]; then
echo ldoms
- if [[ -d ${root}/sys/class/vlds/ctrl && \
- -d ${root}/sys/class/vlds/sp ]]; then
+ if [ -d "${root}/sys/class/vlds/ctrl" ] && \
+ [ -d "${root}/sys/class/vlds/sp" ]; then
echo ldoms-control
else
echo ldoms-guest
fi
MDPROP="${root}/usr/lib/ldoms/mdprop.py"
- if [[ -x ${MDPROP} ]]; then
- if [[ -n $($MDPROP -v iodevice device-type=pciex) ]]; then
+ if [ -x "${MDPROP}" ]; then
+ if [ -n "$($MDPROP -v iodevice device-type=pciex)" ]; then
echo ldoms-root
echo ldoms-io
- elif [[ -n $($MDPROP -v iov-device vf-id=0) ]]; then
+ elif [ -n "$($MDPROP -v iov-device vf-id=0)" ]; then
echo ldoms-io
fi
fi