[virt-tools-list] [PATCH virt-what v2] Update to detect QEMU via 'TCGTCGTCGTCG' CPUID

Richard W.M. Jones rjones at redhat.com
Tue Jul 18 12:47:49 UTC 2017


On Tue, Jul 18, 2017 at 01:45:09PM +0100, Daniel P. Berrange wrote:
> QEMU >= 2.10 will start reporting the string "TCGTCGTCGTCG"
> for CPUID queries when running under TCG only (KVM signature
> is unchanged)
> 
> Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> ---
> 
> Changed in v2:
> 
>  - Rebase to git master
> 
>  virt-what.in | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/virt-what.in b/virt-what.in
> index 5cf2136..5f9edd7 100644
> --- a/virt-what.in
> +++ b/virt-what.in
> @@ -275,6 +275,9 @@ fi
>  if ! "$skip_qemu_kvm"; then
>      if [ "$cpuid" = "KVMKVMKVM" ]; then
>          echo kvm
> +    elif [ "$cpuid" = "TCGTCGTCGTCG" ]; then
> +        echo qemu
> +        skip_lkvm=true
>      elif echo "$dmi" | grep -q 'Product Name: KVM'; then
>          echo kvm
>          skip_lkvm=true
> @@ -297,10 +300,10 @@ if ! "$skip_qemu_kvm"; then
>          echo kvm
>          skip_lkvm=true
>      else
> -        # XXX 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
> -        # string.  The long term fix for this would be to export
> -        # another CPUID leaf for non-accelerated 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
>              echo qemu
>          fi
> -- 
> 2.13.0

Thanks Dan, that patch has been pushed upstream.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine.  Supports Linux and Windows.
http://people.redhat.com/~rjones/virt-df/




More information about the virt-tools-list mailing list