commit fc38a398702207240721d4fc93b1fa143a3ade5a Author: overweight <5324761+overweight@user.noreply.gitee.com> Date: Mon Sep 30 11:19:32 2019 -0400 Package init diff --git a/0001-Missing-have_cpuinfo-check.patch b/0001-Missing-have_cpuinfo-check.patch new file mode 100644 index 0000000..2c2216e --- /dev/null +++ b/0001-Missing-have_cpuinfo-check.patch @@ -0,0 +1,25 @@ +From eefc1e7e3dd8fb422baf0f13aec1df9880541b83 Mon Sep 17 00:00:00 2001 +From: Jasper Lievisse Adriaanse +Date: Thu, 10 Aug 2017 08:44:01 +0100 +Subject: [PATCH 1/4] Missing have_cpuinfo check. + +--- + virt-what.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virt-what.in b/virt-what.in +index 8c27b11..9050035 100644 +--- a/virt-what.in ++++ b/virt-what.in +@@ -308,7 +308,7 @@ if ! "$skip_qemu_kvm"; 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 +-- +2.13.2 + diff --git a/0002-Remove-bashisms.patch b/0002-Remove-bashisms.patch new file mode 100644 index 0000000..7b88642 --- /dev/null +++ b/0002-Remove-bashisms.patch @@ -0,0 +1,48 @@ +From 9d90704a05dee7704470eff818a1c44aeef6c880 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Guido=20G=C3=BCnther?= +Date: Fri, 4 Aug 2017 12:02:08 -0300 +Subject: [PATCH 2/4] Remove bashisms + +Use [ instead of [[ so we fall back to test if necessary: + + http://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html + +Gbp-Pq: Name Remove-bashisms.patch +--- + virt-what.in | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/virt-what.in b/virt-what.in +index 9050035..a05e0db 100644 +--- a/virt-what.in ++++ b/virt-what.in +@@ -360,20 +360,20 @@ if [ "$cpuid" = "OpenBSDVMM58" ]; then + 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 +-- +2.13.2 + diff --git a/0003-As-xen-pv-guest-can-access-cpuid-from-Intel-CPUs-sta.patch b/0003-As-xen-pv-guest-can-access-cpuid-from-Intel-CPUs-sta.patch new file mode 100644 index 0000000..bd42694 --- /dev/null +++ b/0003-As-xen-pv-guest-can-access-cpuid-from-Intel-CPUs-sta.patch @@ -0,0 +1,35 @@ +From a821dc9961d457c086fffcc16a911cb6f9f8659a Mon Sep 17 00:00:00 2001 +From: xiliang +Date: Sun, 18 Jun 2017 00:33:28 +0800 +Subject: [PATCH 3/4] As xen pv guest can access cpuid from Intel CPUs started + IvyBridge onwards have CPUID Faulting, added one more check in virt-what. + +--- + virt-what.in | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/virt-what.in b/virt-what.in +index a05e0db..247348e 100644 +--- a/virt-what.in ++++ b/virt-what.in +@@ -1,6 +1,6 @@ + #!/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 +@@ -223,7 +223,8 @@ fi + + # 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 +-- +2.13.2 + diff --git a/0004-Recognize-ppc64le-little-endian-virtualization-RHBZ-.patch b/0004-Recognize-ppc64le-little-endian-virtualization-RHBZ-.patch new file mode 100644 index 0000000..98f0492 --- /dev/null +++ b/0004-Recognize-ppc64le-little-endian-virtualization-RHBZ-.patch @@ -0,0 +1,28 @@ +From 7db94c8fe63f2c7ec3ac27cc5ff54ec1e1686aeb Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 17 Oct 2017 14:47:09 +0100 +Subject: [PATCH 4/4] Recognize ppc64le (little endian) virtualization + (RHBZ#1147876). + +Tested by Laurent Vivier, see: +https://bugzilla.redhat.com/show_bug.cgi?id=1147876#c35 & ff. +--- + virt-what.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virt-what.in b/virt-what.in +index 247348e..29b7b0d 100644 +--- a/virt-what.in ++++ b/virt-what.in +@@ -339,7 +339,7 @@ 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 +-- +2.13.2 + diff --git a/virt-what-1.18.tar.gz b/virt-what-1.18.tar.gz new file mode 100644 index 0000000..2a09edf Binary files /dev/null and b/virt-what-1.18.tar.gz differ diff --git a/virt-what.spec b/virt-what.spec new file mode 100644 index 0000000..9471aac --- /dev/null +++ b/virt-what.spec @@ -0,0 +1,62 @@ +Name: virt-what +Version: 1.18 +Release: 8 +Summary: Detect if running in a virtual machine +License: GPLv2+ +URL: http://people.redhat.com/~rjones/virt-what/ +Source0: http://people.redhat.com/~rjones/virt-what/files/%{name}-%{version}.tar.gz + +Patch0001: 0001-Missing-have_cpuinfo-check.patch +Patch0002: 0002-Remove-bashisms.patch +Patch0003: 0003-As-xen-pv-guest-can-access-cpuid-from-Intel-CPUs-sta.patch +Patch0004: 0004-Recognize-ppc64le-little-endian-virtualization-RHBZ-.patch + +BuildRequires: gcc util-linux /usr/bin/pod2man git +Requires: dmidecode util-linux which + +%description +virt-what is a shell script which can be used to detect if the program +is running in a virtual machine. + +%package_help + +%prep +%autosetup -n %{name}-%{version} -p1 -Sgit + +%build +%configure +make %{?_smp_mflags} + +%install +rm -rf %{buildroot} +%make_install + +%check +make check + +%pre + +%preun + +%post + +%postun + +%files +%defattr(-,root,root) +%doc README COPYING +%{_sbindir}/* +%{_libexecdir}/virt-what-cpuid-helper + +%files help +%{_mandir}/*/* + +%changelog +* Tue Sep 24 2019 openEuler Buildteam - 1.18-8 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC: revise spec file with new rules + +* Wed Aug 14 2019 openEuler Buildteam - 1.18-7 +- Package init