From 147c648e950ef45b7a5b7b3e8cb30b89c435593b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 31 Oct 2018 15:04:24 +0000 Subject: [PATCH 08/21] aws: Detect AWS from dmidecode information. Move the AWS detection out from under Xen. AWS runs on KVM and baremetal these days. The dmidecode information for KVM and baremetal is a little bit different so we also need to adjust the test for that case. Typical SMBIOS info for Xen: BIOS Information Vendor: Xen Version: 4.2.amazon Typical SMBIOS info for KVM and baremetal: BIOS Information Vendor: Amazon EC2 Version: 1.0 Thanks: Vitaly Kuznetsov, Jon Masters. --- virt-what.in | 13 +++++++++---- virt-what.pod | 8 ++++++-- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/virt-what.in b/virt-what.in index a2f8f19..f685461 100644 --- a/virt-what.in +++ b/virt-what.in @@ -233,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 - # 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 @@ -392,3 +388,12 @@ if [ "${arch#sparc}" != "$arch" ] && [ -e "${root}/dev/mdesc" ]; then 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 diff --git a/virt-what.pod b/virt-what.pod index ebfc190..5a0bdfc 100644 --- a/virt-what.pod +++ b/virt-what.pod @@ -27,9 +27,13 @@ don't know about or cannot detect. =item B -Amazon Web Services cloud guest. +Amazon Web Services. -Status: contributed by Qi Guo. +Note that virt-what will print this fact for baremetal AWS instances, +which you might not consider to be true virtualization. In this case +other facts (eg. C or C) would I be present. + +Status: contributed by Qi Guo, Vitaly Kuznetsov, confirmed by RWMJ. =item B -- 2.23.0