import virt-what-1.18-9.el8_4
This commit is contained in:
parent
4749443663
commit
b47fc585fe
@ -1,7 +1,7 @@
|
|||||||
From eefc1e7e3dd8fb422baf0f13aec1df9880541b83 Mon Sep 17 00:00:00 2001
|
From eefc1e7e3dd8fb422baf0f13aec1df9880541b83 Mon Sep 17 00:00:00 2001
|
||||||
From: Jasper Lievisse Adriaanse <bug@jasper.la>
|
From: Jasper Lievisse Adriaanse <bug@jasper.la>
|
||||||
Date: Thu, 10 Aug 2017 08:44:01 +0100
|
Date: Thu, 10 Aug 2017 08:44:01 +0100
|
||||||
Subject: [PATCH 01/12] Missing have_cpuinfo check.
|
Subject: [PATCH 01/21] Missing have_cpuinfo check.
|
||||||
|
|
||||||
---
|
---
|
||||||
virt-what.in | 2 +-
|
virt-what.in | 2 +-
|
||||||
@ -21,5 +21,5 @@ index 8c27b11..9050035 100644
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
60
SOURCES/0001-Simplify-and-fix-invocation-of-cpuid.patch
Normal file
60
SOURCES/0001-Simplify-and-fix-invocation-of-cpuid.patch
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
From 60d903fbb7653bc9754228bdab4c6933fcda1e72 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Tue, 13 Apr 2021 09:35:07 +0100
|
||||||
|
Subject: [PATCH] Simplify and fix invocation of cpuid.
|
||||||
|
|
||||||
|
Fixes a crash on some platforms identified by Yongkui Guo in
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1756381#c15
|
||||||
|
---
|
||||||
|
virt-what-cpuid-helper.c | 24 ++++++++++++++++--------
|
||||||
|
1 file changed, 16 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virt-what-cpuid-helper.c b/virt-what-cpuid-helper.c
|
||||||
|
index 9c6cdb2..fdceb62 100644
|
||||||
|
--- a/virt-what-cpuid-helper.c
|
||||||
|
+++ b/virt-what-cpuid-helper.c
|
||||||
|
@@ -47,17 +47,25 @@ known_signature (const char *sig)
|
||||||
|
0;
|
||||||
|
}
|
||||||
|
|
||||||
|
+/* Copied from the Linux kernel definition in
|
||||||
|
+ * arch/x86/include/asm/processor.h
|
||||||
|
+ */
|
||||||
|
+static inline void
|
||||||
|
+cpuid (uint32_t *eax, uint32_t *ebx, uint32_t *ecx, uint32_t *edx)
|
||||||
|
+{
|
||||||
|
+ asm volatile ("cpuid"
|
||||||
|
+ : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx)
|
||||||
|
+ : "0" (*eax), "2" (*ecx)
|
||||||
|
+ : "memory");
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static uint32_t
|
||||||
|
-cpuid (uint32_t eax, char *sig)
|
||||||
|
+cpuid_leaf (uint32_t eax, char *sig)
|
||||||
|
{
|
||||||
|
uint32_t *sig32 = (uint32_t *) sig;
|
||||||
|
|
||||||
|
- asm volatile (
|
||||||
|
- "xchgl %%ebx,%1; xor %%ebx,%%ebx; cpuid; xchgl %%ebx,%1"
|
||||||
|
- : "=a" (eax), "+r" (sig32[0]), "=c" (sig32[1]), "=d" (sig32[2])
|
||||||
|
- : "0" (eax));
|
||||||
|
- sig[12] = 0;
|
||||||
|
-
|
||||||
|
+ cpuid (&eax, &sig32[0], &sig32[1], &sig32[2]);
|
||||||
|
+ sig[12] = 0; /* \0-terminate the string to make string comparison possible */
|
||||||
|
return eax;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -87,7 +95,7 @@ cpu_sig (void)
|
||||||
|
*/
|
||||||
|
for (leaf = base + 0xff00; leaf >= base; leaf -= 0x100) {
|
||||||
|
memset (sig, 0, sizeof sig);
|
||||||
|
- cpuid (leaf, sig);
|
||||||
|
+ cpuid_leaf (leaf, sig);
|
||||||
|
if (known_signature (sig)) {
|
||||||
|
puts (sig);
|
||||||
|
break;
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 9d90704a05dee7704470eff818a1c44aeef6c880 Mon Sep 17 00:00:00 2001
|
From 9d90704a05dee7704470eff818a1c44aeef6c880 Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
||||||
Date: Fri, 4 Aug 2017 12:02:08 -0300
|
Date: Fri, 4 Aug 2017 12:02:08 -0300
|
||||||
Subject: [PATCH 02/12] Remove bashisms
|
Subject: [PATCH 02/21] Remove bashisms
|
||||||
|
|
||||||
Use [ instead of [[ so we fall back to test if necessary:
|
Use [ instead of [[ so we fall back to test if necessary:
|
||||||
|
|
||||||
@ -44,5 +44,5 @@ index 9050035..a05e0db 100644
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From a821dc9961d457c086fffcc16a911cb6f9f8659a Mon Sep 17 00:00:00 2001
|
From a821dc9961d457c086fffcc16a911cb6f9f8659a Mon Sep 17 00:00:00 2001
|
||||||
From: xiliang <xiliang@redhat.com>
|
From: xiliang <xiliang@redhat.com>
|
||||||
Date: Sun, 18 Jun 2017 00:33:28 +0800
|
Date: Sun, 18 Jun 2017 00:33:28 +0800
|
||||||
Subject: [PATCH 03/12] As xen pv guest can access cpuid from Intel CPUs
|
Subject: [PATCH 03/21] As xen pv guest can access cpuid from Intel CPUs
|
||||||
started IvyBridge onwards have CPUID Faulting, added one more check in
|
started IvyBridge onwards have CPUID Faulting, added one more check in
|
||||||
virt-what.
|
virt-what.
|
||||||
|
|
||||||
@ -32,5 +32,5 @@ index a05e0db..247348e 100644
|
|||||||
# Check for AWS
|
# Check for AWS
|
||||||
if echo "$dmi" | grep -q 'Version: [0-9]\.[0-9]\.amazon'; then
|
if echo "$dmi" | grep -q 'Version: [0-9]\.[0-9]\.amazon'; then
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 7db94c8fe63f2c7ec3ac27cc5ff54ec1e1686aeb Mon Sep 17 00:00:00 2001
|
From 7db94c8fe63f2c7ec3ac27cc5ff54ec1e1686aeb Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Tue, 17 Oct 2017 14:47:09 +0100
|
Date: Tue, 17 Oct 2017 14:47:09 +0100
|
||||||
Subject: [PATCH 04/12] Recognize ppc64le (little endian) virtualization
|
Subject: [PATCH 04/21] Recognize ppc64le (little endian) virtualization
|
||||||
(RHBZ#1147876).
|
(RHBZ#1147876).
|
||||||
|
|
||||||
Tested by Laurent Vivier, see:
|
Tested by Laurent Vivier, see:
|
||||||
@ -24,5 +24,5 @@ index 247348e..29b7b0d 100644
|
|||||||
if grep -q 'model.*emulated by qemu' "${root}/proc/cpuinfo"; then
|
if grep -q 'model.*emulated by qemu' "${root}/proc/cpuinfo"; then
|
||||||
echo ibm_power-kvm
|
echo ibm_power-kvm
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 52870e8a264653d7921e8a4edff56d4b050614d8 Mon Sep 17 00:00:00 2001
|
From 52870e8a264653d7921e8a4edff56d4b050614d8 Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
||||||
Date: Sat, 27 Jan 2018 13:11:36 +0100
|
Date: Sat, 27 Jan 2018 13:11:36 +0100
|
||||||
Subject: [PATCH 05/12] Determine architecture via 'uname -m'
|
Subject: [PATCH 05/21] Determine architecture via 'uname -m'
|
||||||
|
|
||||||
'uname -p' only gives unknown on x86_64, i386, arm6l (rpi) and aarch64
|
'uname -p' only gives unknown on x86_64, i386, arm6l (rpi) and aarch64
|
||||||
(scaleways).
|
(scaleways).
|
||||||
@ -26,5 +26,5 @@ index 29b7b0d..2011ff4 100644
|
|||||||
# Check for VMware.
|
# Check for VMware.
|
||||||
# cpuid check added by Chetan Loke.
|
# cpuid check added by Chetan Loke.
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From d7fd8a7843030d2b1719353edfcd49dba3000122 Mon Sep 17 00:00:00 2001
|
From d7fd8a7843030d2b1719353edfcd49dba3000122 Mon Sep 17 00:00:00 2001
|
||||||
From: Jasper Lievisse Adriaanse <jasper@humppa.nl>
|
From: Jasper Lievisse Adriaanse <jasper@humppa.nl>
|
||||||
Date: Wed, 25 Apr 2018 16:41:32 +0200
|
Date: Wed, 25 Apr 2018 16:41:32 +0200
|
||||||
Subject: [PATCH 06/12] Allow using sysctl, for example when /proc isn't
|
Subject: [PATCH 06/21] Allow using sysctl, for example when /proc isn't
|
||||||
available
|
available
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -40,5 +40,5 @@ index 2011ff4..d037a99 100644
|
|||||||
# This is known to fail for qemu with the explicit -cpu
|
# This is known to fail for qemu with the explicit -cpu
|
||||||
# option, since /proc/cpuinfo will not contain the QEMU
|
# option, since /proc/cpuinfo will not contain the QEMU
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 5efe9f7a58cd0cdc6f4c279c7f0a69e57fbda56f Mon Sep 17 00:00:00 2001
|
From 5efe9f7a58cd0cdc6f4c279c7f0a69e57fbda56f Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Tue, 28 Aug 2018 18:32:41 +0100
|
Date: Tue, 28 Aug 2018 18:32:41 +0100
|
||||||
Subject: [PATCH 07/12] Replace == with = since the former is a bash-ism.
|
Subject: [PATCH 07/21] Replace == with = since the former is a bash-ism.
|
||||||
|
|
||||||
Thanks: Eric Blake.
|
Thanks: Eric Blake.
|
||||||
|
|
||||||
@ -24,5 +24,5 @@ index d037a99..a2f8f19 100644
|
|||||||
|
|
||||||
fail () {
|
fail () {
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 147c648e950ef45b7a5b7b3e8cb30b89c435593b Mon Sep 17 00:00:00 2001
|
From 147c648e950ef45b7a5b7b3e8cb30b89c435593b Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Wed, 31 Oct 2018 15:04:24 +0000
|
Date: Wed, 31 Oct 2018 15:04:24 +0000
|
||||||
Subject: [PATCH 08/12] aws: Detect AWS from dmidecode information.
|
Subject: [PATCH 08/21] aws: Detect AWS from dmidecode information.
|
||||||
|
|
||||||
Move the AWS detection out from under Xen. AWS runs on KVM and
|
Move the AWS detection out from under Xen. AWS runs on KVM and
|
||||||
baremetal these days. The dmidecode information for KVM and baremetal
|
baremetal these days. The dmidecode information for KVM and baremetal
|
||||||
@ -75,5 +75,5 @@ index ebfc190..5a0bdfc 100644
|
|||||||
=item B<bhyve>
|
=item B<bhyve>
|
||||||
|
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 4bceb38a6102ca95bde79205efaa643a0824d3a2 Mon Sep 17 00:00:00 2001
|
From 4bceb38a6102ca95bde79205efaa643a0824d3a2 Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Wed, 31 Oct 2018 15:35:34 +0000
|
Date: Wed, 31 Oct 2018 15:35:34 +0000
|
||||||
Subject: [PATCH 09/12] tests: Fix tests when run on AWS.
|
Subject: [PATCH 09/21] tests: Fix tests when run on AWS.
|
||||||
|
|
||||||
When running on AWS two of the tests failed. This was because the
|
When running on AWS two of the tests failed. This was because the
|
||||||
tests did _not_ include a working dmidecode binary, hence the platform
|
tests did _not_ include a working dmidecode binary, hence the platform
|
||||||
@ -28,5 +28,5 @@ diff --git a/tests/ppc64-baremetal/sbin/dmidecode b/tests/ppc64-baremetal/sbin/d
|
|||||||
old mode 100644
|
old mode 100644
|
||||||
new mode 100755
|
new mode 100755
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 129a25f9854930928351c8cc3913a5b9a1c558b4 Mon Sep 17 00:00:00 2001
|
From 129a25f9854930928351c8cc3913a5b9a1c558b4 Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Wed, 31 Oct 2018 15:23:45 +0000
|
Date: Wed, 31 Oct 2018 15:23:45 +0000
|
||||||
Subject: [PATCH 10/12] aws: Add regression test for AWS on KVM on x86_64
|
Subject: [PATCH 10/21] aws: Add regression test for AWS on KVM on x86_64
|
||||||
architecture.
|
architecture.
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -286,5 +286,5 @@ index 0000000..db4c19f
|
|||||||
+ exit 1
|
+ exit 1
|
||||||
+fi
|
+fi
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 298a15ead59c2dbeb9b2fabe7fb502100fdd4dc7 Mon Sep 17 00:00:00 2001
|
From 298a15ead59c2dbeb9b2fabe7fb502100fdd4dc7 Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Wed, 31 Oct 2018 15:43:20 +0000
|
Date: Wed, 31 Oct 2018 15:43:20 +0000
|
||||||
Subject: [PATCH 11/12] aws: Add regression test for AWS on baremetal on x86_64
|
Subject: [PATCH 11/21] aws: Add regression test for AWS on baremetal on x86_64
|
||||||
architecture.
|
architecture.
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -3231,5 +3231,5 @@ index 0000000..d456163
|
|||||||
+ exit 1
|
+ exit 1
|
||||||
+fi
|
+fi
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 350291e1ca417eab9d2aa2408589f0259cac007c Mon Sep 17 00:00:00 2001
|
From 350291e1ca417eab9d2aa2408589f0259cac007c Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Wed, 31 Oct 2018 15:23:45 +0000
|
Date: Wed, 31 Oct 2018 15:23:45 +0000
|
||||||
Subject: [PATCH 12/12] aws: Add regression test for AWS on Xen on x86_64
|
Subject: [PATCH 12/21] aws: Add regression test for AWS on Xen on x86_64
|
||||||
architecture.
|
architecture.
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -354,5 +354,5 @@ index 0000000..22b7f83
|
|||||||
+ exit 1
|
+ exit 1
|
||||||
+fi
|
+fi
|
||||||
--
|
--
|
||||||
2.19.0.rc0
|
2.23.0
|
||||||
|
|
||||||
|
@ -0,0 +1,244 @@
|
|||||||
|
From f25e07d43db40355b321493f78758ea058fa3849 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Wed, 31 Oct 2018 15:23:45 +0000
|
||||||
|
Subject: [PATCH 13/21] aws: Add regression test for AWS on KVM on ARM
|
||||||
|
architecture.
|
||||||
|
|
||||||
|
---
|
||||||
|
Makefile.am | 1 +
|
||||||
|
tests/aws-kvm-arm/proc/cpuinfo | 9 +++
|
||||||
|
tests/aws-kvm-arm/proc/self/status | 54 +++++++++++++++
|
||||||
|
tests/aws-kvm-arm/sbin/dmidecode | 68 +++++++++++++++++++
|
||||||
|
tests/aws-kvm-arm/sbin/uname | 2 +
|
||||||
|
tests/aws-kvm-arm/sbin/virt-what-cpuid-helper | 2 +
|
||||||
|
tests/test-aws-kvm-arm.sh | 36 ++++++++++
|
||||||
|
7 files changed, 172 insertions(+)
|
||||||
|
create mode 100644 tests/aws-kvm-arm/proc/cpuinfo
|
||||||
|
create mode 100644 tests/aws-kvm-arm/proc/self/status
|
||||||
|
create mode 100755 tests/aws-kvm-arm/sbin/dmidecode
|
||||||
|
create mode 100755 tests/aws-kvm-arm/sbin/uname
|
||||||
|
create mode 100755 tests/aws-kvm-arm/sbin/virt-what-cpuid-helper
|
||||||
|
create mode 100755 tests/test-aws-kvm-arm.sh
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 22680a0..67502fc 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -40,6 +40,7 @@ endif
|
||||||
|
|
||||||
|
TESTS = \
|
||||||
|
tests/test-aws-baremetal-x86.sh \
|
||||||
|
+ tests/test-aws-kvm-arm.sh \
|
||||||
|
tests/test-aws-kvm-x86.sh \
|
||||||
|
tests/test-aws-xen-x86.sh \
|
||||||
|
tests/test-baremetal.sh \
|
||||||
|
diff --git a/tests/aws-kvm-arm/proc/cpuinfo b/tests/aws-kvm-arm/proc/cpuinfo
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..bc5a5bb
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/aws-kvm-arm/proc/cpuinfo
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+processor : 0
|
||||||
|
+BogoMIPS : 166.66
|
||||||
|
+Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
|
||||||
|
+CPU implementer : 0x41
|
||||||
|
+CPU architecture: 8
|
||||||
|
+CPU variant : 0x0
|
||||||
|
+CPU part : 0xd08
|
||||||
|
+CPU revision : 3
|
||||||
|
+
|
||||||
|
diff --git a/tests/aws-kvm-arm/proc/self/status b/tests/aws-kvm-arm/proc/self/status
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..121a8cc
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/aws-kvm-arm/proc/self/status
|
||||||
|
@@ -0,0 +1,54 @@
|
||||||
|
+Name: cat
|
||||||
|
+Umask: 0022
|
||||||
|
+State: R (running)
|
||||||
|
+Tgid: 17874
|
||||||
|
+Ngid: 0
|
||||||
|
+Pid: 17874
|
||||||
|
+PPid: 9992
|
||||||
|
+TracerPid: 0
|
||||||
|
+Uid: 0 0 0 0
|
||||||
|
+Gid: 0 0 0 0
|
||||||
|
+FDSize: 256
|
||||||
|
+Groups: 0
|
||||||
|
+NStgid: 17874
|
||||||
|
+NSpid: 17874
|
||||||
|
+NSpgid: 17874
|
||||||
|
+NSsid: 9992
|
||||||
|
+VmPeak: 109760 kB
|
||||||
|
+VmSize: 109760 kB
|
||||||
|
+VmLck: 0 kB
|
||||||
|
+VmPin: 0 kB
|
||||||
|
+VmHWM: 832 kB
|
||||||
|
+VmRSS: 832 kB
|
||||||
|
+RssAnon: 448 kB
|
||||||
|
+RssFile: 384 kB
|
||||||
|
+RssShmem: 0 kB
|
||||||
|
+VmData: 384 kB
|
||||||
|
+VmStk: 192 kB
|
||||||
|
+VmExe: 64 kB
|
||||||
|
+VmLib: 1664 kB
|
||||||
|
+VmPTE: 192 kB
|
||||||
|
+VmPMD: 128 kB
|
||||||
|
+VmSwap: 0 kB
|
||||||
|
+HugetlbPages: 0 kB
|
||||||
|
+Threads: 1
|
||||||
|
+SigQ: 0/1470
|
||||||
|
+SigPnd: 0000000000000000
|
||||||
|
+ShdPnd: 0000000000000000
|
||||||
|
+SigBlk: 0000000000000000
|
||||||
|
+SigIgn: 0000000000000000
|
||||||
|
+SigCgt: 0000000000000000
|
||||||
|
+CapInh: 0000000000000000
|
||||||
|
+CapPrm: 0000003fffffffff
|
||||||
|
+CapEff: 0000003fffffffff
|
||||||
|
+CapBnd: 0000003fffffffff
|
||||||
|
+CapAmb: 0000000000000000
|
||||||
|
+NoNewPrivs: 0
|
||||||
|
+Seccomp: 0
|
||||||
|
+Speculation Store Bypass: unknown
|
||||||
|
+Cpus_allowed: 1
|
||||||
|
+Cpus_allowed_list: 0
|
||||||
|
+Mems_allowed: 1
|
||||||
|
+Mems_allowed_list: 0
|
||||||
|
+voluntary_ctxt_switches: 0
|
||||||
|
+nonvoluntary_ctxt_switches: 0
|
||||||
|
diff --git a/tests/aws-kvm-arm/sbin/dmidecode b/tests/aws-kvm-arm/sbin/dmidecode
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..d126758
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/aws-kvm-arm/sbin/dmidecode
|
||||||
|
@@ -0,0 +1,68 @@
|
||||||
|
+#!/bin/sh -
|
||||||
|
+cat <<'EOF'
|
||||||
|
+# dmidecode 3.1
|
||||||
|
+Getting SMBIOS data from sysfs.
|
||||||
|
+SMBIOS 2.7 present.
|
||||||
|
+5 structures occupying 233 bytes.
|
||||||
|
+Table at 0x7F780000.
|
||||||
|
+
|
||||||
|
+Handle 0x0000, DMI type 0, 24 bytes
|
||||||
|
+BIOS Information
|
||||||
|
+ Vendor: Amazon EC2
|
||||||
|
+ Version: 1.0
|
||||||
|
+ Release Date: 12/1/2018
|
||||||
|
+ Address: 0xF0000
|
||||||
|
+ Runtime Size: 64 kB
|
||||||
|
+ ROM Size: 64 kB
|
||||||
|
+ Characteristics:
|
||||||
|
+ PCI is supported
|
||||||
|
+ EDD is supported
|
||||||
|
+ ACPI is supported
|
||||||
|
+ System is a virtual machine
|
||||||
|
+ BIOS Revision: 1.0
|
||||||
|
+
|
||||||
|
+Handle 0x0001, DMI type 1, 27 bytes
|
||||||
|
+System Information
|
||||||
|
+ Manufacturer: Amazon EC2
|
||||||
|
+ Product Name: a1.medium
|
||||||
|
+ Version: Not Specified
|
||||||
|
+ Serial Number: ec2ce86a-12c2-9388-d9b0-8dc833cba752
|
||||||
|
+ UUID: ec2ce86a-12c2-9388-d9b0-8dc833cba752
|
||||||
|
+ Wake-up Type: Power Switch
|
||||||
|
+ SKU Number: Not Specified
|
||||||
|
+ Family: Not Specified
|
||||||
|
+
|
||||||
|
+Handle 0x0002, DMI type 2, 15 bytes
|
||||||
|
+Base Board Information
|
||||||
|
+ Manufacturer: Amazon EC2
|
||||||
|
+ Product Name: Not Specified
|
||||||
|
+ Version: Not Specified
|
||||||
|
+ Serial Number: Not Specified
|
||||||
|
+ Asset Tag: i-01c1b85d3dcc02ed7
|
||||||
|
+ Features: None
|
||||||
|
+ Location In Chassis: Not Specified
|
||||||
|
+ Chassis Handle: 0x0003
|
||||||
|
+ Type: Other
|
||||||
|
+ Contained Object Handles: 0
|
||||||
|
+
|
||||||
|
+Handle 0x0003, DMI type 3, 21 bytes
|
||||||
|
+Chassis Information
|
||||||
|
+ Manufacturer: Amazon EC2
|
||||||
|
+ Type: Other
|
||||||
|
+ Lock: Not Present
|
||||||
|
+ Version: Not Specified
|
||||||
|
+ Serial Number: Not Specified
|
||||||
|
+ Asset Tag: Amazon EC2
|
||||||
|
+ Boot-up State: Safe
|
||||||
|
+ Power Supply State: Safe
|
||||||
|
+ Thermal State: Safe
|
||||||
|
+ Security Status: None
|
||||||
|
+ OEM Information: 0x00000000
|
||||||
|
+ Height: Unspecified
|
||||||
|
+ Number Of Power Cords: 1
|
||||||
|
+ Contained Elements: 0
|
||||||
|
+
|
||||||
|
+Handle 0xFEFF, DMI type 127, 4 bytes
|
||||||
|
+End Of Table
|
||||||
|
+
|
||||||
|
+EOF
|
||||||
|
diff --git a/tests/aws-kvm-arm/sbin/uname b/tests/aws-kvm-arm/sbin/uname
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..bd33a2d
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/aws-kvm-arm/sbin/uname
|
||||||
|
@@ -0,0 +1,2 @@
|
||||||
|
+#!/bin/sh -
|
||||||
|
+echo aarch64
|
||||||
|
diff --git a/tests/aws-kvm-arm/sbin/virt-what-cpuid-helper b/tests/aws-kvm-arm/sbin/virt-what-cpuid-helper
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..4475399
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/aws-kvm-arm/sbin/virt-what-cpuid-helper
|
||||||
|
@@ -0,0 +1,2 @@
|
||||||
|
+#!/bin/sh -
|
||||||
|
+# prints nothing but exits successfully
|
||||||
|
diff --git a/tests/test-aws-kvm-arm.sh b/tests/test-aws-kvm-arm.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..8875421
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/test-aws-kvm-arm.sh
|
||||||
|
@@ -0,0 +1,36 @@
|
||||||
|
+# Test for AWS.
|
||||||
|
+# Copyright (C) 2018 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
|
||||||
|
+# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
+# (at your option) any later version.
|
||||||
|
+#
|
||||||
|
+# This program is distributed in the hope that it will be useful,
|
||||||
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
+# GNU General Public License for more details.
|
||||||
|
+#
|
||||||
|
+# You should have received a copy of the GNU General Public License
|
||||||
|
+# along with this program; if not, write to the Free Software
|
||||||
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
+
|
||||||
|
+root=tests/aws-kvm-arm
|
||||||
|
+
|
||||||
|
+output="$(./virt-what --test-root=$root 2>&1)"
|
||||||
|
+# XXX At the moment KVM cannot be detected on this platform.
|
||||||
|
+# We hope to fix that, but for now the only fact printed is "aws".
|
||||||
|
+expected="aws"
|
||||||
|
+
|
||||||
|
+if [ "$output" != "$expected" ]; then
|
||||||
|
+ echo "$0: test failed because output did not match expected"
|
||||||
|
+ echo "Expected output was:"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ echo "$expected"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ echo "But the actual output of the program was:"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ echo "$output"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
25
SOURCES/0014-build-Remove-files-on-make-clean.patch
Normal file
25
SOURCES/0014-build-Remove-files-on-make-clean.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 56427ce169d5a6dc46ed6c6555ee3f7c4e0843d6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Thu, 3 Oct 2019 09:08:19 +0100
|
||||||
|
Subject: [PATCH 14/21] build: Remove *~ files on make clean.
|
||||||
|
|
||||||
|
---
|
||||||
|
Makefile.am | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 67502fc..48fd518 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -15,7 +15,7 @@
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
|
||||||
|
-CLEANFILES = virt-what
|
||||||
|
+CLEANFILES = virt-what *~
|
||||||
|
|
||||||
|
AM_CPPFLAGS = -Wall
|
||||||
|
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
2384
SOURCES/0015-Arrange-tests-in-subdirectories.patch
Normal file
2384
SOURCES/0015-Arrange-tests-in-subdirectories.patch
Normal file
File diff suppressed because it is too large
Load Diff
26
SOURCES/0016-build-Add-.gitignore-to-tarball.patch
Normal file
26
SOURCES/0016-build-Add-.gitignore-to-tarball.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 5c2c251d9aae98e6a629b966bdd8cae2aa1dedaf Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Thu, 3 Oct 2019 10:16:08 +0100
|
||||||
|
Subject: [PATCH 16/21] build: Add .gitignore to tarball.
|
||||||
|
|
||||||
|
Mainly to keep maintainer-check-extra-dist happy.
|
||||||
|
---
|
||||||
|
Makefile.am | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index b62738f..1cb73b7 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -19,7 +19,7 @@ AM_CPPFLAGS = -Wall
|
||||||
|
|
||||||
|
CLEANFILES = virt-what *~
|
||||||
|
|
||||||
|
-EXTRA_DIST = virt-what.in virt-what.pod
|
||||||
|
+EXTRA_DIST = .gitignore virt-what.in virt-what.pod
|
||||||
|
|
||||||
|
SUBDIRS = . tests
|
||||||
|
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
51
SOURCES/0017-maintainer-Add-rules-for-maintainers.patch
Normal file
51
SOURCES/0017-maintainer-Add-rules-for-maintainers.patch
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
From b6161b67b0bd542169e13cdfa0488a0266e3ae7a Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Thu, 3 Oct 2019 10:13:43 +0100
|
||||||
|
Subject: [PATCH 17/21] maintainer: Add rules for maintainers.
|
||||||
|
|
||||||
|
Adds:
|
||||||
|
make maintainer-check-extra-dist
|
||||||
|
make maintainer-commit
|
||||||
|
make maintainer-tag
|
||||||
|
---
|
||||||
|
Makefile.am | 27 +++++++++++++++++++++++++++
|
||||||
|
1 file changed, 27 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 1cb73b7..5435132 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -41,3 +41,30 @@ virt-what.txt: virt-what.pod
|
||||||
|
pod2text $? > $@
|
||||||
|
|
||||||
|
endif
|
||||||
|
+
|
||||||
|
+#----------------------------------------------------------------------
|
||||||
|
+# Maintainers only!
|
||||||
|
+
|
||||||
|
+# Check no files are missing from EXTRA_DIST rules, and that all
|
||||||
|
+# generated files have been included in the tarball. (Note you must
|
||||||
|
+# have done 'make dist')
|
||||||
|
+maintainer-check-extra-dist:
|
||||||
|
+ @zcat $(PACKAGE_NAME)-$(VERSION).tar.gz | tar tf - | sort | \
|
||||||
|
+ sed 's,^$(PACKAGE_NAME)-$(VERSION)/,,' > tarfiles
|
||||||
|
+ @git ls-files | \
|
||||||
|
+ sort > gitfiles
|
||||||
|
+ @comm -13 tarfiles gitfiles > comm-out
|
||||||
|
+ @echo Checking for differences between EXTRA_DIST and git ...
|
||||||
|
+ @cat comm-out
|
||||||
|
+ @[ ! -s comm-out ]
|
||||||
|
+ @rm tarfiles gitfiles comm-out
|
||||||
|
+ @echo PASS: EXTRA_DIST tests
|
||||||
|
+
|
||||||
|
+# Commit everything in the current directory and set the commit
|
||||||
|
+# message to the current version number.
|
||||||
|
+maintainer-commit:
|
||||||
|
+ git commit -a -m "Version $(VERSION)."
|
||||||
|
+
|
||||||
|
+# Tag HEAD with the current version.
|
||||||
|
+maintainer-tag:
|
||||||
|
+ git tag -a v$(VERSION) -m "Version $(VERSION)." -f
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
118
SOURCES/0018-Fix-virt-what-cpuid-helper.patch
Normal file
118
SOURCES/0018-Fix-virt-what-cpuid-helper.patch
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
From a5471559e7398418f1bb9c538a7bfc8f39e9ae98 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Fri, 4 Oct 2019 15:57:42 +0300
|
||||||
|
Subject: [PATCH 18/21] Fix virt-what-cpuid-helper.
|
||||||
|
|
||||||
|
The value returned in %eax is the max_entry (eg. 0x40000000
|
||||||
|
if there are no further leafs). However it is not reliable.
|
||||||
|
In addition if there are multiple leafs we should probably
|
||||||
|
only print the highest one.
|
||||||
|
|
||||||
|
Also use uint32_t instead of unsigned int.
|
||||||
|
|
||||||
|
Thanks: Paolo Bonzini.
|
||||||
|
---
|
||||||
|
virt-what-cpuid-helper.c | 67 ++++++++++++++++++++++++++++------------
|
||||||
|
1 file changed, 48 insertions(+), 19 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virt-what-cpuid-helper.c b/virt-what-cpuid-helper.c
|
||||||
|
index 7812545..0cd4a6f 100644
|
||||||
|
--- a/virt-what-cpuid-helper.c
|
||||||
|
+++ b/virt-what-cpuid-helper.c
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
/* virt-what-cpuid-helper: Are we running inside KVM or Xen HVM?
|
||||||
|
- * Copyright (C) 2008 Red Hat Inc.
|
||||||
|
+ * Copyright (C) 2008-2019 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
|
||||||
|
@@ -21,14 +21,35 @@
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
+#include <stdlib.h>
|
||||||
|
+#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#if defined(__i386__) || defined(__x86_64__)
|
||||||
|
|
||||||
|
-static unsigned int
|
||||||
|
-cpuid (unsigned int eax, char *sig)
|
||||||
|
+/* Known x86 hypervisor signatures. Note that if you add a new test
|
||||||
|
+ * to virt-what.in you may need to update this list. The signature is
|
||||||
|
+ * always 12 bytes except in the case of KVM.
|
||||||
|
+ */
|
||||||
|
+static int
|
||||||
|
+known_signature (char *sig)
|
||||||
|
{
|
||||||
|
- unsigned int *sig32 = (unsigned int *) sig;
|
||||||
|
+ return
|
||||||
|
+ strcmp (sig, "bhyve bhyve ") == 0 ||
|
||||||
|
+ strcmp (sig, "KVMKVMKVM") == 0 ||
|
||||||
|
+ strcmp (sig, "LKVMLKVMLKVM") == 0 ||
|
||||||
|
+ strcmp (sig, "Microsoft Hv") == 0 ||
|
||||||
|
+ strcmp (sig, "OpenBSDVMM58") == 0 ||
|
||||||
|
+ strcmp (sig, "TCGTCGTCGTCG") == 0 ||
|
||||||
|
+ strcmp (sig, "VMwareVMware") == 0 ||
|
||||||
|
+ strcmp (sig, "XenVMMXenVMM") == 0 ||
|
||||||
|
+ 0;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static uint32_t
|
||||||
|
+cpuid (uint32_t eax, char *sig)
|
||||||
|
+{
|
||||||
|
+ uint32_t *sig32 = (uint32_t *) sig;
|
||||||
|
|
||||||
|
asm volatile (
|
||||||
|
"xchgl %%ebx,%1; xor %%ebx,%%ebx; cpuid; xchgl %%ebx,%1"
|
||||||
|
@@ -43,24 +64,32 @@ static void
|
||||||
|
cpu_sig (void)
|
||||||
|
{
|
||||||
|
char sig[13];
|
||||||
|
- unsigned int base = 0x40000000, leaf = base;
|
||||||
|
- unsigned int max_entries;
|
||||||
|
-
|
||||||
|
- memset (sig, 0, sizeof sig);
|
||||||
|
- max_entries = cpuid (leaf, sig);
|
||||||
|
- puts (sig);
|
||||||
|
+ const uint32_t base = 0x40000000;
|
||||||
|
+ uint32_t leaf;
|
||||||
|
|
||||||
|
- /* Most hypervisors only have information in leaf 0x40000000, but
|
||||||
|
- * upstream Xen contains further leaf entries (in particular when
|
||||||
|
- * used with Viridian [HyperV] extensions). CPUID is supposed to
|
||||||
|
- * return the maximum leaf offset in %eax, so that's what we use,
|
||||||
|
- * but only if it looks sensible.
|
||||||
|
+ /* Most hypervisors only have information in leaf 0x40000000.
|
||||||
|
+ *
|
||||||
|
+ * Some hypervisors have "Viridian [HyperV] extensions", and those
|
||||||
|
+ * must appear in slot 0x40000000, but they will also have the true
|
||||||
|
+ * hypervisor in a higher slot.
|
||||||
|
+ *
|
||||||
|
+ * CPUID is supposed to return the maximum leaf offset in %eax, but
|
||||||
|
+ * this is not reliable. Instead we check the returned signatures
|
||||||
|
+ * against a known list (the others will be empty or garbage) and
|
||||||
|
+ * only print the ones we know about. This is OK because if we add
|
||||||
|
+ * a new test in virt-what we can update the list.
|
||||||
|
+ *
|
||||||
|
+ * By searching backwards we only print the highest entry, thus
|
||||||
|
+ * ignoring Viridian for Xen (and Nutanix). If we ever encounter a
|
||||||
|
+ * hypervisor that has more than 2 entries we may need to revisit
|
||||||
|
+ * this.
|
||||||
|
*/
|
||||||
|
- if (max_entries > 3 && max_entries < 0x10000) {
|
||||||
|
- for (leaf = base + 0x100; leaf <= base + max_entries; leaf += 0x100) {
|
||||||
|
- memset (sig, 0, sizeof sig);
|
||||||
|
- cpuid (leaf, sig);
|
||||||
|
+ for (leaf = base + 0xff00; leaf >= base; leaf -= 0x100) {
|
||||||
|
+ memset (sig, 0, sizeof sig);
|
||||||
|
+ cpuid (leaf, sig);
|
||||||
|
+ if (known_signature (sig)) {
|
||||||
|
puts (sig);
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
@ -0,0 +1,405 @@
|
|||||||
|
From 01ea13d9813df93e294b0d9776d4cefd54b1609b Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Fri, 4 Oct 2019 16:25:55 +0300
|
||||||
|
Subject: [PATCH 19/21] Add support for Nutanix Acropolis Hypervisor (AHV)
|
||||||
|
(RHBZ#1756381).
|
||||||
|
|
||||||
|
Thanks: Cristian Seres for providing access to a guest.
|
||||||
|
---
|
||||||
|
configure.ac | 2 +
|
||||||
|
tests/nutanix-ahv/Makefile.am | 28 ++++
|
||||||
|
tests/nutanix-ahv/proc/cpuinfo | 27 ++++
|
||||||
|
tests/nutanix-ahv/proc/self/status | 55 ++++++++
|
||||||
|
tests/nutanix-ahv/sbin/dmidecode | 123 ++++++++++++++++++
|
||||||
|
tests/nutanix-ahv/sbin/uname | 2 +
|
||||||
|
tests/nutanix-ahv/sbin/virt-what-cpuid-helper | 2 +
|
||||||
|
tests/nutanix-ahv/test.sh | 32 +++++
|
||||||
|
virt-what.in | 10 +-
|
||||||
|
virt-what.pod | 6 +
|
||||||
|
10 files changed, 286 insertions(+), 1 deletion(-)
|
||||||
|
create mode 100644 tests/nutanix-ahv/Makefile.am
|
||||||
|
create mode 100644 tests/nutanix-ahv/proc/cpuinfo
|
||||||
|
create mode 100644 tests/nutanix-ahv/proc/self/status
|
||||||
|
create mode 100755 tests/nutanix-ahv/sbin/dmidecode
|
||||||
|
create mode 100755 tests/nutanix-ahv/sbin/uname
|
||||||
|
create mode 100755 tests/nutanix-ahv/sbin/virt-what-cpuid-helper
|
||||||
|
create mode 100755 tests/nutanix-ahv/test.sh
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 5e0d9c4..f246e34 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -51,6 +51,7 @@ tests="\
|
||||||
|
lkvm-arm \
|
||||||
|
lx86 \
|
||||||
|
lxc \
|
||||||
|
+ nutanix-ahv \
|
||||||
|
parallels-desktop \
|
||||||
|
ppc64-baremetal \
|
||||||
|
ppc64-kvm \
|
||||||
|
@@ -93,6 +94,7 @@ AC_CONFIG_FILES([Makefile
|
||||||
|
tests/lkvm-arm/Makefile
|
||||||
|
tests/lx86/Makefile
|
||||||
|
tests/lxc/Makefile
|
||||||
|
+ tests/nutanix-ahv/Makefile
|
||||||
|
tests/parallels-desktop/Makefile
|
||||||
|
tests/ppc64-baremetal/Makefile
|
||||||
|
tests/ppc64-kvm/Makefile
|
||||||
|
diff --git a/tests/nutanix-ahv/Makefile.am b/tests/nutanix-ahv/Makefile.am
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..b748df8
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/Makefile.am
|
||||||
|
@@ -0,0 +1,28 @@
|
||||||
|
+# Makefile for virt-what
|
||||||
|
+# Copyright (C) 2008-2011 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
|
||||||
|
+# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
+# (at your option) any later version.
|
||||||
|
+#
|
||||||
|
+# This program is distributed in the hope that it will be useful,
|
||||||
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
+# GNU General Public License for more details.
|
||||||
|
+#
|
||||||
|
+# You should have received a copy of the GNU General Public License
|
||||||
|
+# along with this program; if not, write to the Free Software
|
||||||
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
+
|
||||||
|
+CLEANFILES = *~
|
||||||
|
+
|
||||||
|
+TESTS = test.sh
|
||||||
|
+
|
||||||
|
+EXTRA_DIST = \
|
||||||
|
+ test.sh \
|
||||||
|
+ proc/cpuinfo \
|
||||||
|
+ proc/self/status \
|
||||||
|
+ sbin/dmidecode \
|
||||||
|
+ sbin/uname \
|
||||||
|
+ sbin/virt-what-cpuid-helper
|
||||||
|
diff --git a/tests/nutanix-ahv/proc/cpuinfo b/tests/nutanix-ahv/proc/cpuinfo
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..d7a1f68
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/proc/cpuinfo
|
||||||
|
@@ -0,0 +1,27 @@
|
||||||
|
+processor : 0
|
||||||
|
+vendor_id : GenuineIntel
|
||||||
|
+cpu family : 15
|
||||||
|
+model : 6
|
||||||
|
+model name : Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz
|
||||||
|
+stepping : 1
|
||||||
|
+microcode : 0x1
|
||||||
|
+cpu MHz : 2199.998
|
||||||
|
+cache size : 16384 KB
|
||||||
|
+physical id : 0
|
||||||
|
+siblings : 1
|
||||||
|
+core id : 0
|
||||||
|
+cpu cores : 1
|
||||||
|
+apicid : 0
|
||||||
|
+initial apicid : 0
|
||||||
|
+fpu : yes
|
||||||
|
+fpu_exception : yes
|
||||||
|
+cpuid level : 13
|
||||||
|
+wp : yes
|
||||||
|
+flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc nopl cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat md_clear
|
||||||
|
+bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs
|
||||||
|
+bogomips : 4399.99
|
||||||
|
+clflush size : 64
|
||||||
|
+cache_alignment : 128
|
||||||
|
+address sizes : 46 bits physical, 48 bits virtual
|
||||||
|
+power management:
|
||||||
|
+
|
||||||
|
diff --git a/tests/nutanix-ahv/proc/self/status b/tests/nutanix-ahv/proc/self/status
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..7b4eed0
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/proc/self/status
|
||||||
|
@@ -0,0 +1,55 @@
|
||||||
|
+Name: cat
|
||||||
|
+Umask: 0022
|
||||||
|
+State: R (running)
|
||||||
|
+Tgid: 18508
|
||||||
|
+Ngid: 0
|
||||||
|
+Pid: 18508
|
||||||
|
+PPid: 18506
|
||||||
|
+TracerPid: 0
|
||||||
|
+Uid: 0 0 0 0
|
||||||
|
+Gid: 0 0 0 0
|
||||||
|
+FDSize: 64
|
||||||
|
+Groups: 0
|
||||||
|
+NStgid: 18508
|
||||||
|
+NSpid: 18508
|
||||||
|
+NSpgid: 18506
|
||||||
|
+NSsid: 1945
|
||||||
|
+VmPeak: 5392 kB
|
||||||
|
+VmSize: 5392 kB
|
||||||
|
+VmLck: 0 kB
|
||||||
|
+VmPin: 0 kB
|
||||||
|
+VmHWM: 760 kB
|
||||||
|
+VmRSS: 760 kB
|
||||||
|
+RssAnon: 68 kB
|
||||||
|
+RssFile: 692 kB
|
||||||
|
+RssShmem: 0 kB
|
||||||
|
+VmData: 312 kB
|
||||||
|
+VmStk: 132 kB
|
||||||
|
+VmExe: 28 kB
|
||||||
|
+VmLib: 1456 kB
|
||||||
|
+VmPTE: 48 kB
|
||||||
|
+VmSwap: 0 kB
|
||||||
|
+HugetlbPages: 0 kB
|
||||||
|
+CoreDumping: 0
|
||||||
|
+THP_enabled: 1
|
||||||
|
+Threads: 1
|
||||||
|
+SigQ: 3/7359
|
||||||
|
+SigPnd: 0000000000000000
|
||||||
|
+ShdPnd: 0000000000000000
|
||||||
|
+SigBlk: 0000000000000000
|
||||||
|
+SigIgn: 0000000000000000
|
||||||
|
+SigCgt: 0000000000000000
|
||||||
|
+CapInh: 0000000000000000
|
||||||
|
+CapPrm: 0000003fffffffff
|
||||||
|
+CapEff: 0000003fffffffff
|
||||||
|
+CapBnd: 0000003fffffffff
|
||||||
|
+CapAmb: 0000000000000000
|
||||||
|
+NoNewPrivs: 0
|
||||||
|
+Seccomp: 0
|
||||||
|
+Speculation_Store_Bypass: thread vulnerable
|
||||||
|
+Cpus_allowed: ffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff
|
||||||
|
+Cpus_allowed_list: 0-239
|
||||||
|
+Mems_allowed: 00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001
|
||||||
|
+Mems_allowed_list: 0
|
||||||
|
+voluntary_ctxt_switches: 0
|
||||||
|
+nonvoluntary_ctxt_switches: 2
|
||||||
|
diff --git a/tests/nutanix-ahv/sbin/dmidecode b/tests/nutanix-ahv/sbin/dmidecode
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..3774819
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/sbin/dmidecode
|
||||||
|
@@ -0,0 +1,123 @@
|
||||||
|
+#!/bin/sh -
|
||||||
|
+cat <<'EOF'
|
||||||
|
+i# dmidecode 3.2
|
||||||
|
+Getting SMBIOS data from sysfs.
|
||||||
|
+SMBIOS 2.8 present.
|
||||||
|
+9 structures occupying 486 bytes.
|
||||||
|
+Table at 0x000F73C0.
|
||||||
|
+
|
||||||
|
+Handle 0x0000, DMI type 0, 24 bytes
|
||||||
|
+BIOS Information
|
||||||
|
+ Vendor: SeaBIOS
|
||||||
|
+ Version: 1.9.1-5.el6
|
||||||
|
+ Release Date: 04/01/2014
|
||||||
|
+ Address: 0xE8000
|
||||||
|
+ Runtime Size: 96 kB
|
||||||
|
+ ROM Size: 64 kB
|
||||||
|
+ Characteristics:
|
||||||
|
+ BIOS characteristics not supported
|
||||||
|
+ Targeted content distribution is supported
|
||||||
|
+ BIOS Revision: 0.0
|
||||||
|
+
|
||||||
|
+Handle 0x0100, DMI type 1, 27 bytes
|
||||||
|
+System Information
|
||||||
|
+ Manufacturer: Nutanix
|
||||||
|
+ Product Name: AHV
|
||||||
|
+ Version: RHEL 7.3.0 PC (i440FX + PIIX, 1996)
|
||||||
|
+ Serial Number: B913C223-EEDE-4DFC-BB43-BE1495F4388D
|
||||||
|
+ UUID: b913c223-eede-4dfc-bb43-be1495f4388d
|
||||||
|
+ Wake-up Type: Power Switch
|
||||||
|
+ SKU Number: Not Specified
|
||||||
|
+ Family: Red Hat Enterprise Linux
|
||||||
|
+
|
||||||
|
+Handle 0x0300, DMI type 3, 21 bytes
|
||||||
|
+Chassis Information
|
||||||
|
+ Manufacturer: Red Hat
|
||||||
|
+ Type: Other
|
||||||
|
+ Lock: Not Present
|
||||||
|
+ Version: RHEL 7.3.0 PC (i440FX + PIIX, 1996)
|
||||||
|
+ Serial Number: Not Specified
|
||||||
|
+ Asset Tag: Not Specified
|
||||||
|
+ Boot-up State: Safe
|
||||||
|
+ Power Supply State: Safe
|
||||||
|
+ Thermal State: Safe
|
||||||
|
+ Security Status: Unknown
|
||||||
|
+ OEM Information: 0x00000000
|
||||||
|
+ Height: Unspecified
|
||||||
|
+ Number Of Power Cords: Unspecified
|
||||||
|
+ Contained Elements: 0
|
||||||
|
+
|
||||||
|
+Handle 0x0400, DMI type 4, 42 bytes
|
||||||
|
+Processor Information
|
||||||
|
+ Socket Designation: CPU 0
|
||||||
|
+ Type: Central Processor
|
||||||
|
+ Family: Other
|
||||||
|
+ Manufacturer: Red Hat
|
||||||
|
+ ID: 61 0F 00 00 FF FB 8B 0F
|
||||||
|
+ Version: RHEL 7.3.0 PC (i440FX + PIIX, 1996)
|
||||||
|
+ Voltage: Unknown
|
||||||
|
+ External Clock: Unknown
|
||||||
|
+ Max Speed: 2000 MHz
|
||||||
|
+ Current Speed: 2000 MHz
|
||||||
|
+ Status: Populated, Enabled
|
||||||
|
+ Upgrade: Other
|
||||||
|
+ L1 Cache Handle: Not Provided
|
||||||
|
+ L2 Cache Handle: Not Provided
|
||||||
|
+ L3 Cache Handle: Not Provided
|
||||||
|
+ Serial Number: Not Specified
|
||||||
|
+ Asset Tag: Not Specified
|
||||||
|
+ Part Number: Not Specified
|
||||||
|
+ Core Count: 1
|
||||||
|
+ Core Enabled: 1
|
||||||
|
+ Thread Count: 1
|
||||||
|
+ Characteristics: None
|
||||||
|
+
|
||||||
|
+Handle 0x1000, DMI type 16, 23 bytes
|
||||||
|
+Physical Memory Array
|
||||||
|
+ Location: Other
|
||||||
|
+ Use: System Memory
|
||||||
|
+ Error Correction Type: Multi-bit ECC
|
||||||
|
+ Maximum Capacity: 2 GB
|
||||||
|
+ Error Information Handle: Not Provided
|
||||||
|
+ Number Of Devices: 1
|
||||||
|
+
|
||||||
|
+Handle 0x1100, DMI type 17, 40 bytes
|
||||||
|
+Memory Device
|
||||||
|
+ Array Handle: 0x1000
|
||||||
|
+ Error Information Handle: Not Provided
|
||||||
|
+ Total Width: Unknown
|
||||||
|
+ Data Width: Unknown
|
||||||
|
+ Size: 2048 MB
|
||||||
|
+ Form Factor: DIMM
|
||||||
|
+ Set: None
|
||||||
|
+ Locator: DIMM 0
|
||||||
|
+ Bank Locator: Not Specified
|
||||||
|
+ Type: RAM
|
||||||
|
+ Type Detail: Other
|
||||||
|
+ Speed: Unknown
|
||||||
|
+ Manufacturer: Red Hat
|
||||||
|
+ Serial Number: Not Specified
|
||||||
|
+ Asset Tag: Not Specified
|
||||||
|
+ Part Number: Not Specified
|
||||||
|
+ Rank: Unknown
|
||||||
|
+ Configured Memory Speed: Unknown
|
||||||
|
+ Minimum Voltage: Unknown
|
||||||
|
+ Maximum Voltage: Unknown
|
||||||
|
+ Configured Voltage: Unknown
|
||||||
|
+
|
||||||
|
+Handle 0x1300, DMI type 19, 31 bytes
|
||||||
|
+Memory Array Mapped Address
|
||||||
|
+ Starting Address: 0x00000000000
|
||||||
|
+ Ending Address: 0x0007FFFFFFF
|
||||||
|
+ Range Size: 2 GB
|
||||||
|
+ Physical Array Handle: 0x1000
|
||||||
|
+ Partition Width: 1
|
||||||
|
+
|
||||||
|
+Handle 0x2000, DMI type 32, 11 bytes
|
||||||
|
+System Boot Information
|
||||||
|
+ Status: No errors detected
|
||||||
|
+
|
||||||
|
+Handle 0x7F00, DMI type 127, 4 bytes
|
||||||
|
+End Of Table
|
||||||
|
+
|
||||||
|
+EOF
|
||||||
|
diff --git a/tests/nutanix-ahv/sbin/uname b/tests/nutanix-ahv/sbin/uname
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..ab0ec89
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/sbin/uname
|
||||||
|
@@ -0,0 +1,2 @@
|
||||||
|
+#!/bin/sh -
|
||||||
|
+echo x86_64
|
||||||
|
diff --git a/tests/nutanix-ahv/sbin/virt-what-cpuid-helper b/tests/nutanix-ahv/sbin/virt-what-cpuid-helper
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..f52a9d7
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/sbin/virt-what-cpuid-helper
|
||||||
|
@@ -0,0 +1,2 @@
|
||||||
|
+#!/bin/sh -
|
||||||
|
+echo KVMKVMKVM
|
||||||
|
diff --git a/tests/nutanix-ahv/test.sh b/tests/nutanix-ahv/test.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..3d934b2
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/nutanix-ahv/test.sh
|
||||||
|
@@ -0,0 +1,32 @@
|
||||||
|
+# Test for Nutanix AHV
|
||||||
|
+# Copyright (C) 2019 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
|
||||||
|
+# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
+# (at your option) any later version.
|
||||||
|
+#
|
||||||
|
+# This program is distributed in the hope that it will be useful,
|
||||||
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
+# GNU General Public License for more details.
|
||||||
|
+#
|
||||||
|
+# You should have received a copy of the GNU General Public License
|
||||||
|
+# along with this program; if not, write to the Free Software
|
||||||
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
+
|
||||||
|
+output="$(PATH=../..:$PATH virt-what --test-root=. 2>&1)"
|
||||||
|
+expected="nutanix_ahv"
|
||||||
|
+
|
||||||
|
+if [ "$output" != "$expected" ]; then
|
||||||
|
+ echo "$0: test failed because output did not match expected"
|
||||||
|
+ echo "Expected output was:"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ echo "$expected"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ echo "But the actual output of the program was:"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ echo "$output"
|
||||||
|
+ echo "----------------------------------------"
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
diff --git a/virt-what.in b/virt-what.in
|
||||||
|
index f685461..9eafa05 100644
|
||||||
|
--- a/virt-what.in
|
||||||
|
+++ b/virt-what.in
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
#!/bin/sh -
|
||||||
|
# @configure_input@
|
||||||
|
-# Copyright (C) 2008-2017 Red Hat Inc.
|
||||||
|
+# Copyright (C) 2008-2019 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
|
||||||
|
@@ -220,6 +220,14 @@ if echo "$dmi" | grep -q 'Vendor: Parallels'; then
|
||||||
|
skip_qemu_kvm=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
+# Check for Nutanix AHV.
|
||||||
|
+# This is sufficiently different from KVM and has Viridian extensions,
|
||||||
|
+# so skip the KVM test.
|
||||||
|
+if echo "$dmi" | grep -q 'Manufacturer: Nutanix'; then
|
||||||
|
+ echo nutanix_ahv
|
||||||
|
+ skip_qemu_kvm=true
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
# Check for oVirt/RHEV.
|
||||||
|
if echo "$dmi" | grep -q 'Manufacturer: oVirt'; then
|
||||||
|
echo ovirt
|
||||||
|
diff --git a/virt-what.pod b/virt-what.pod
|
||||||
|
index 5a0bdfc..ea5cb77 100644
|
||||||
|
--- a/virt-what.pod
|
||||||
|
+++ b/virt-what.pod
|
||||||
|
@@ -177,6 +177,12 @@ is lkvm (a.k.a kvmtool).
|
||||||
|
|
||||||
|
Status: contributed by Andrew Jones
|
||||||
|
|
||||||
|
+=item B<nutanix_ahv>
|
||||||
|
+
|
||||||
|
+The guest is running inside Nutanix Acropolis Hypervisor (AHV).
|
||||||
|
+
|
||||||
|
+Status: confirmed by RWMJ.
|
||||||
|
+
|
||||||
|
=item B<openvz>
|
||||||
|
|
||||||
|
The guest appears to be running inside an OpenVZ or Virtuozzo
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
38
SOURCES/0020-helper-Fix-KVM-signature.patch
Normal file
38
SOURCES/0020-helper-Fix-KVM-signature.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From e0443f1fc78f2a79c073dbdf4133bec41c4c0591 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Fri, 4 Oct 2019 18:30:01 +0100
|
||||||
|
Subject: [PATCH 20/21] helper: Fix KVM signature.
|
||||||
|
|
||||||
|
Thanks: Paolo Bonzini.
|
||||||
|
---
|
||||||
|
virt-what-cpuid-helper.c | 9 +++++----
|
||||||
|
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virt-what-cpuid-helper.c b/virt-what-cpuid-helper.c
|
||||||
|
index 0cd4a6f..9c6cdb2 100644
|
||||||
|
--- a/virt-what-cpuid-helper.c
|
||||||
|
+++ b/virt-what-cpuid-helper.c
|
||||||
|
@@ -28,15 +28,16 @@
|
||||||
|
#if defined(__i386__) || defined(__x86_64__)
|
||||||
|
|
||||||
|
/* Known x86 hypervisor signatures. Note that if you add a new test
|
||||||
|
- * to virt-what.in you may need to update this list. The signature is
|
||||||
|
- * always 12 bytes except in the case of KVM.
|
||||||
|
+ * to virt-what.in you may need to update this list. Note the
|
||||||
|
+ * signature is always 12 bytes long, plus we add \0 to the end to
|
||||||
|
+ * make it 13 bytes.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
-known_signature (char *sig)
|
||||||
|
+known_signature (const char *sig)
|
||||||
|
{
|
||||||
|
return
|
||||||
|
strcmp (sig, "bhyve bhyve ") == 0 ||
|
||||||
|
- strcmp (sig, "KVMKVMKVM") == 0 ||
|
||||||
|
+ memcmp (sig, "KVMKVMKVM\0\0\0", 12) == 0 ||
|
||||||
|
strcmp (sig, "LKVMLKVMLKVM") == 0 ||
|
||||||
|
strcmp (sig, "Microsoft Hv") == 0 ||
|
||||||
|
strcmp (sig, "OpenBSDVMM58") == 0 ||
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
@ -0,0 +1,27 @@
|
|||||||
|
From 71ef45e9543278e9920e449b71e0da269662ebc9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: willem van de velde <williamvdvelde@gmail.com>
|
||||||
|
Date: Tue, 22 Oct 2019 11:58:01 +0100
|
||||||
|
Subject: [PATCH 21/21] Fix incorrect detection of MS Surfacebook 2 as a
|
||||||
|
virtual machine.
|
||||||
|
|
||||||
|
---
|
||||||
|
virt-what.in | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/virt-what.in b/virt-what.in
|
||||||
|
index 9eafa05..a61ce91 100644
|
||||||
|
--- a/virt-what.in
|
||||||
|
+++ b/virt-what.in
|
||||||
|
@@ -132,7 +132,8 @@ fi
|
||||||
|
# The negative check for cpuid is to distinguish this from Hyper-V
|
||||||
|
# which also has the same manufacturer string in the SM-BIOS data.
|
||||||
|
if [ "$cpuid" != "Microsoft Hv" ] &&
|
||||||
|
- echo "$dmi" | grep -q 'Manufacturer: Microsoft Corporation'; then
|
||||||
|
+ echo "$dmi" | grep -q 'Manufacturer: Microsoft Corporation' &&
|
||||||
|
+ echo "$dmi" | grep -q 'Product Name: Virtual Machine'; then
|
||||||
|
echo virtualpc
|
||||||
|
fi
|
||||||
|
|
||||||
|
--
|
||||||
|
2.23.0
|
||||||
|
|
28
SOURCES/gitignore
Normal file
28
SOURCES/gitignore
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
*~
|
||||||
|
*.log
|
||||||
|
*.trs
|
||||||
|
*.o
|
||||||
|
|
||||||
|
/virt-what-*.tar.gz
|
||||||
|
/.deps
|
||||||
|
/Makefile
|
||||||
|
/Makefile.in
|
||||||
|
/aclocal.m4
|
||||||
|
/autom4te.cache
|
||||||
|
/compile
|
||||||
|
/config.guess
|
||||||
|
/config.h
|
||||||
|
/config.h.in
|
||||||
|
/config.log
|
||||||
|
/config.status
|
||||||
|
/config.sub
|
||||||
|
/configure
|
||||||
|
/depcomp
|
||||||
|
/install-sh
|
||||||
|
/missing
|
||||||
|
/stamp-h1
|
||||||
|
/test-driver
|
||||||
|
/virt-what
|
||||||
|
/virt-what-cpuid-helper
|
||||||
|
/virt-what.1
|
||||||
|
/virt-what.txt
|
@ -1,12 +1,17 @@
|
|||||||
Name: virt-what
|
Name: virt-what
|
||||||
Version: 1.18
|
Version: 1.18
|
||||||
Release: 6%{?dist}
|
Release: 9%{?dist}
|
||||||
Summary: Detect if we are running in a virtual machine
|
Summary: Detect if we are running in a virtual machine
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
|
|
||||||
URL: http://people.redhat.com/~rjones/virt-what/
|
URL: http://people.redhat.com/~rjones/virt-what/
|
||||||
Source0: http://people.redhat.com/~rjones/virt-what/files/%{name}-%{version}.tar.gz
|
Source0: http://people.redhat.com/~rjones/virt-what/files/%{name}-%{version}.tar.gz
|
||||||
|
|
||||||
|
# Some of the patches below apply to .gitignore, but that file was not
|
||||||
|
# included in the tarball before v1.20. This is the version from
|
||||||
|
# v1.18 upstream allowing patching to go ahead.
|
||||||
|
Source1: gitignore
|
||||||
|
|
||||||
# Patches from upstream since 1.18 was released.
|
# Patches from upstream since 1.18 was released.
|
||||||
Patch0001: 0001-Missing-have_cpuinfo-check.patch
|
Patch0001: 0001-Missing-have_cpuinfo-check.patch
|
||||||
Patch0002: 0002-Remove-bashisms.patch
|
Patch0002: 0002-Remove-bashisms.patch
|
||||||
@ -21,6 +26,22 @@ Patch0009: 0009-tests-Fix-tests-when-run-on-AWS.patch
|
|||||||
Patch0010: 0010-aws-Add-regression-test-for-AWS-on-KVM-on-x86_64-arc.patch
|
Patch0010: 0010-aws-Add-regression-test-for-AWS-on-KVM-on-x86_64-arc.patch
|
||||||
Patch0011: 0011-aws-Add-regression-test-for-AWS-on-baremetal-on-x86_.patch
|
Patch0011: 0011-aws-Add-regression-test-for-AWS-on-baremetal-on-x86_.patch
|
||||||
Patch0012: 0012-aws-Add-regression-test-for-AWS-on-Xen-on-x86_64-arc.patch
|
Patch0012: 0012-aws-Add-regression-test-for-AWS-on-Xen-on-x86_64-arc.patch
|
||||||
|
Patch0013: 0013-aws-Add-regression-test-for-AWS-on-KVM-on-ARM-archit.patch
|
||||||
|
# Refactor build and tests.
|
||||||
|
Patch0014: 0014-build-Remove-files-on-make-clean.patch
|
||||||
|
Patch0015: 0015-Arrange-tests-in-subdirectories.patch
|
||||||
|
Patch0016: 0016-build-Add-.gitignore-to-tarball.patch
|
||||||
|
Patch0017: 0017-maintainer-Add-rules-for-maintainers.patch
|
||||||
|
# Support for Nutanix AHV (RHBZ#1756381).
|
||||||
|
Patch0018: 0018-Fix-virt-what-cpuid-helper.patch
|
||||||
|
Patch0019: 0019-Add-support-for-Nutanix-Acropolis-Hypervisor-AHV-RHB.patch
|
||||||
|
Patch0020: 0020-helper-Fix-KVM-signature.patch
|
||||||
|
# Support for virtualized MS Surfacebook 2.
|
||||||
|
Patch0021: 0021-Fix-incorrect-detection-of-MS-Surfacebook-2-as-a-vir.patch
|
||||||
|
|
||||||
|
# Fix crash on non-KVM platforms through incorrect use of CPUID in
|
||||||
|
# patch 0018 (https://bugzilla.redhat.com/show_bug.cgi?id=1756381#c15).
|
||||||
|
Patch0022: 0001-Simplify-and-fix-invocation-of-cpuid.patch
|
||||||
|
|
||||||
# Patches touch Makefile.am:
|
# Patches touch Makefile.am:
|
||||||
BuildRequires: autoconf, automake
|
BuildRequires: autoconf, automake
|
||||||
@ -94,7 +115,18 @@ Current types of virtualization detected:
|
|||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -S git
|
# We can go back to autosetup once we rebase to >= v1.20 which
|
||||||
|
# includes the .gitignore file in the tarball.
|
||||||
|
#autosetup -S git
|
||||||
|
# But until then ...
|
||||||
|
%setup -q -n %{name}-%{version}
|
||||||
|
cp %{SOURCE1} .gitignore
|
||||||
|
git init
|
||||||
|
git config user.email "noone@example.com"
|
||||||
|
git config user.name "no one"
|
||||||
|
git add .
|
||||||
|
git commit -a -q -m "%{version} baseline"
|
||||||
|
git am %{patches} </dev/null
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -122,6 +154,18 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Apr 13 2021 Richard W.M. Jones <rjones@redhat.com> - 1.18-9
|
||||||
|
- Fix crash on non-KVM platforms through incorrect use of CPUID
|
||||||
|
related: rhbz#1756381
|
||||||
|
|
||||||
|
* Tue Dec 10 2019 Richard W.M. Jones <rjones@redhat.com> - 1.18-8
|
||||||
|
- Add support for Nutanix AHV
|
||||||
|
resolves: rhbz#1756381
|
||||||
|
- Add all patches since 1.18 was released, up to 1.20 and beyond.
|
||||||
|
|
||||||
|
* Thu Mar 21 2019 Richard W.M. Jones <rjones@redhat.com> - 1.18-7
|
||||||
|
- Add gating tests resolves: rhbz#1682785
|
||||||
|
|
||||||
* Wed Oct 31 2018 Richard W.M. Jones <rjones@redhat.com> - 1.18-6
|
* Wed Oct 31 2018 Richard W.M. Jones <rjones@redhat.com> - 1.18-6
|
||||||
- Add further patches to fix AWS support
|
- Add further patches to fix AWS support
|
||||||
resolves: rhbz#1644497
|
resolves: rhbz#1644497
|
||||||
|
Loading…
Reference in New Issue
Block a user