git.annexia.org
/
virt-what.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
aws: Add regression test for AWS on KVM on x86_64 architecture.
[virt-what.git]
/
virt-what.in
diff --git
a/virt-what.in
b/virt-what.in
index
247348e
..
f685461
100644
(file)
--- a/
virt-what.in
+++ b/
virt-what.in
@@
-38,6
+38,13
@@
have_cpuinfo () {
test -e "${root}/proc/cpuinfo"
}
test -e "${root}/proc/cpuinfo"
}
+use_sysctl() {
+ # Lacking /proc, on some systems sysctl can be used instead.
+ OS=$(uname) || fail "failed to get operating system name"
+
+ [ "$OS" = "OpenBSD" ]
+}
+
fail () {
echo "virt-what: $1" >&2
exit 1
fail () {
echo "virt-what: $1" >&2
exit 1
@@
-102,9
+109,9
@@
cpuid=$(virt-what-cpuid-helper)
dmi=$(LANG=C dmidecode 2>&1)
# Architecture.
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 VMware.
# cpuid check added by Chetan Loke.
@@
-226,10
+233,6
@@
fi
if [ "$cpuid" = "XenVMMXenVMM" ] &&
! echo "$dmi" | grep -q 'No SMBIOS nor DMI entry point found, sorry'; then
echo xen; echo xen-hvm
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
- echo aws
- fi
skip_qemu_kvm=true
elif [ -d "${root}/proc/xen" ]; then
echo xen
skip_qemu_kvm=true
elif [ -d "${root}/proc/xen" ]; then
echo xen
@@
-304,6
+307,12
@@
if ! "$skip_qemu_kvm"; then
# We are running as a spapr KVM guest on ppc64
echo kvm
skip_lkvm=true
# We are running as a spapr KVM guest on ppc64
echo kvm
skip_lkvm=true
+ elif use_sysctl; then
+ # SmartOS KVM
+ product=$(sysctl -n hw.product)
+ if echo "$product" | grep -q 'SmartDC HVM'; then
+ echo kvm
+ fi
else
# This is known to fail for qemu with the explicit -cpu
# option, since /proc/cpuinfo will not contain the QEMU
else
# This is known to fail for qemu with the explicit -cpu
# option, since /proc/cpuinfo will not contain the QEMU
@@
-339,7
+348,7
@@
fi
# example /proc/ppc64/lparcfg systemtype line
# system_type=IBM pSeries (emulated by qemu)
# 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
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
@@
-379,3
+388,12
@@
if [ "${arch#sparc}" != "$arch" ] && [ -e "${root}/dev/mdesc" ]; then
fi
fi
fi
fi
fi
fi
+
+# Check for AWS.
+# AWS on Xen.
+if echo "$dmi" | grep -q 'Version: [0-9]\.[0-9]\.amazon'; then
+ echo aws
+# AWS on baremetal or KVM.
+elif echo "$dmi" | grep -q 'Vendor: Amazon EC2'; then
+ echo aws
+fi