From: Don Slutz <Don@CloudSwitch.Com>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: <qemu-devel@nongnu.org>, <mtosatti@redhat.com>,
<ehabkost@redhat.com>, <imammedo@redhat.com>, <avi@redhat.com>,
<afaerber@suse.de>, <peter.maydell@linaro.org>,
<kvm@vger.kernel.org>, <anthony@codemonkey.ws>
Subject: Re: [Qemu-devel] [PATCH v5 00/17] Allow changing of Hypervisor CPUIDs.
Date: Mon, 24 Sep 2012 09:15:23 -0400 [thread overview]
Message-ID: <50605CEB.3050603@CloudSwitch.Com> (raw)
In-Reply-To: <CAAu8pHv7zL0Dz+h0_G+7JBYFOvfrUT3Y8zuwNRs0+c+Z-3rbxA@mail.gmail.com>
On 09/22/12 09:18, Blue Swirl wrote:
> On Sat, Sep 22, 2012 at 12:13 AM, Don Slutz <Don@cloudswitch.com> wrote:
>> Also known as Paravirtualization CPUIDs.
>>
>> This is primarily done so that the guest will think it is running
>> under vmware when hypervisor-vendor=vmware is specified as a
>> property of a cpu.
> Please use checkpatch.pl to check for missing braces etc.
I have been. Somehow missed the warnings on the posted patches. v6 in
the works.
>>
>> This depends on:
>>
>> http://lists.gnu.org/archive/html/qemu-devel/2012-09/msg01400.html
>>
>> As far as I know it is #4. It depends on (1) and (2) and (3).
>>
>> This change is based on:
>>
>> Microsoft Hypervisor CPUID Leaves:
>> http://msdn.microsoft.com/en-us/library/windows/hardware/ff542428%28v=vs.85%29.aspx
>>
>> Linux kernel change starts with:
>> http://fixunix.com/kernel/538707-use-cpuid-communicate-hypervisor.html
>> Also:
>> http://lkml.indiana.edu/hypermail/linux/kernel/1205.0/00100.html
>>
>> VMware documention on CPUIDs (Mechanisms to determine if software is
>> running in a VMware virtual machine):
>> http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1009458
>>
>> Changes from v4 to v5:
>> Undo kvm_clock2 change.
>> Add cpuid_hv_level_set; cpuid_hv_level == 0 is now valid.
>> Add cpuid_hv_vendor_set; the null string is now valid.
>> Handle kvm and cpuid_hv_level == 0.
>> hypervisor-vendor=kvm,hypervisor-level=0 and hypervisor-level=0,hypervisor-vendor=kvm
>> now do the same thing.
>>
>> Changes from v3 to v4:
>> Added CPUID_HV_LEVEL_HYPERV, CPUID_HV_LEVEL_KVM.
>> Added CPUID_HV_VENDOR_HYPERV.
>> Added hyperv as known hypservisor-vendor.
>> Allow hypervisor-level to be 0.
>>
>> Changes from v2 to v3:
>> Clean post to qemu-devel.
>>
>> Changes from v1 to v2:
>>
>> 1) Added 1/4 from http://lists.gnu.org/archive/html/qemu-devel/2012-08/msg05153.html
>>
>> Because Fred is changing jobs and so will not be pushing to get
>> this in. It needed to be rebased, And I needed it to complete the
>> testing of this change.
>>
>> 2) Added 2/4 because of the re-work I needed a way to clear all KVM bits,
>>
>> 3) The rework of v1. Make it fit into the object model re-work of cpu.c for x86.
>>
>> 4) Added 3/4 -- The split out of the code that is not needed for accel=kvm.
>>
>> Changes from v2 to v3:
>>
>> Marcelo Tosatti:
>> Its one big patch, better split in logically correlated patches
>> (with better changelog). This would help reviewers.
>>
>> So split 3 and 4 into 3 to 17. More info in change log.
>> No code change.
>>
>> Don Slutz (17):
>> target-i386: Allow tsc-frequency to be larger then 2.147G
>> target-i386: Add missing kvm bits.
>> target-i386: Add Hypervisor level.
>> target-i386: Add cpu object access routines for Hypervisor level.
>> target-i386: Add cpu object access routines for Hypervisor level.
>> target-i386: Use Hypervisor level in -machine pc,accel=kvm.
>> target-i386: Use Hypervisor level in -machine pc,accel=tcg.
>> target-i386: Add Hypervisor vendor.
>> target-i386: Add cpu object access routines for Hypervisor vendor.
>> target-i386: Use Hypervisor vendor in -machine pc,accel=kvm.
>> target-i386: Use Hypervisor vendor in -machine pc,accel=tcg.
>> target-i386: Add some known names to Hypervisor vendor.
>> target-i386: Add optional Hypervisor leaf extra.
>> target-i386: Add cpu object access routines for Hypervisor leaf
>> extra.
>> target-i386: Add setting of Hypervisor leaf extra for known vmare4.
>> target-i386: Use Hypervisor leaf extra in -machine pc,accel=kvm.
>> target-i386: Use Hypervisor leaf extra in -machine pc,accel=tcg.
>>
>> target-i386/cpu.c | 285 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
>> target-i386/cpu.h | 34 +++++++
>> target-i386/kvm.c | 33 +++++-
>> 3 files changed, 341 insertions(+), 11 deletions(-)
>>
>>
-Don
WARNING: multiple messages have this Message-ID (diff)
From: Don Slutz <Don@CloudSwitch.Com>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: peter.maydell@linaro.org, ehabkost@redhat.com,
kvm@vger.kernel.org, mtosatti@redhat.com, qemu-devel@nongnu.org,
avi@redhat.com, anthony@codemonkey.ws, imammedo@redhat.com,
afaerber@suse.de
Subject: Re: [Qemu-devel] [PATCH v5 00/17] Allow changing of Hypervisor CPUIDs.
Date: Mon, 24 Sep 2012 09:15:23 -0400 [thread overview]
Message-ID: <50605CEB.3050603@CloudSwitch.Com> (raw)
In-Reply-To: <CAAu8pHv7zL0Dz+h0_G+7JBYFOvfrUT3Y8zuwNRs0+c+Z-3rbxA@mail.gmail.com>
On 09/22/12 09:18, Blue Swirl wrote:
> On Sat, Sep 22, 2012 at 12:13 AM, Don Slutz <Don@cloudswitch.com> wrote:
>> Also known as Paravirtualization CPUIDs.
>>
>> This is primarily done so that the guest will think it is running
>> under vmware when hypervisor-vendor=vmware is specified as a
>> property of a cpu.
> Please use checkpatch.pl to check for missing braces etc.
I have been. Somehow missed the warnings on the posted patches. v6 in
the works.
>>
>> This depends on:
>>
>> http://lists.gnu.org/archive/html/qemu-devel/2012-09/msg01400.html
>>
>> As far as I know it is #4. It depends on (1) and (2) and (3).
>>
>> This change is based on:
>>
>> Microsoft Hypervisor CPUID Leaves:
>> http://msdn.microsoft.com/en-us/library/windows/hardware/ff542428%28v=vs.85%29.aspx
>>
>> Linux kernel change starts with:
>> http://fixunix.com/kernel/538707-use-cpuid-communicate-hypervisor.html
>> Also:
>> http://lkml.indiana.edu/hypermail/linux/kernel/1205.0/00100.html
>>
>> VMware documention on CPUIDs (Mechanisms to determine if software is
>> running in a VMware virtual machine):
>> http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1009458
>>
>> Changes from v4 to v5:
>> Undo kvm_clock2 change.
>> Add cpuid_hv_level_set; cpuid_hv_level == 0 is now valid.
>> Add cpuid_hv_vendor_set; the null string is now valid.
>> Handle kvm and cpuid_hv_level == 0.
>> hypervisor-vendor=kvm,hypervisor-level=0 and hypervisor-level=0,hypervisor-vendor=kvm
>> now do the same thing.
>>
>> Changes from v3 to v4:
>> Added CPUID_HV_LEVEL_HYPERV, CPUID_HV_LEVEL_KVM.
>> Added CPUID_HV_VENDOR_HYPERV.
>> Added hyperv as known hypservisor-vendor.
>> Allow hypervisor-level to be 0.
>>
>> Changes from v2 to v3:
>> Clean post to qemu-devel.
>>
>> Changes from v1 to v2:
>>
>> 1) Added 1/4 from http://lists.gnu.org/archive/html/qemu-devel/2012-08/msg05153.html
>>
>> Because Fred is changing jobs and so will not be pushing to get
>> this in. It needed to be rebased, And I needed it to complete the
>> testing of this change.
>>
>> 2) Added 2/4 because of the re-work I needed a way to clear all KVM bits,
>>
>> 3) The rework of v1. Make it fit into the object model re-work of cpu.c for x86.
>>
>> 4) Added 3/4 -- The split out of the code that is not needed for accel=kvm.
>>
>> Changes from v2 to v3:
>>
>> Marcelo Tosatti:
>> Its one big patch, better split in logically correlated patches
>> (with better changelog). This would help reviewers.
>>
>> So split 3 and 4 into 3 to 17. More info in change log.
>> No code change.
>>
>> Don Slutz (17):
>> target-i386: Allow tsc-frequency to be larger then 2.147G
>> target-i386: Add missing kvm bits.
>> target-i386: Add Hypervisor level.
>> target-i386: Add cpu object access routines for Hypervisor level.
>> target-i386: Add cpu object access routines for Hypervisor level.
>> target-i386: Use Hypervisor level in -machine pc,accel=kvm.
>> target-i386: Use Hypervisor level in -machine pc,accel=tcg.
>> target-i386: Add Hypervisor vendor.
>> target-i386: Add cpu object access routines for Hypervisor vendor.
>> target-i386: Use Hypervisor vendor in -machine pc,accel=kvm.
>> target-i386: Use Hypervisor vendor in -machine pc,accel=tcg.
>> target-i386: Add some known names to Hypervisor vendor.
>> target-i386: Add optional Hypervisor leaf extra.
>> target-i386: Add cpu object access routines for Hypervisor leaf
>> extra.
>> target-i386: Add setting of Hypervisor leaf extra for known vmare4.
>> target-i386: Use Hypervisor leaf extra in -machine pc,accel=kvm.
>> target-i386: Use Hypervisor leaf extra in -machine pc,accel=tcg.
>>
>> target-i386/cpu.c | 285 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
>> target-i386/cpu.h | 34 +++++++
>> target-i386/kvm.c | 33 +++++-
>> 3 files changed, 341 insertions(+), 11 deletions(-)
>>
>>
-Don
next prev parent reply other threads:[~2012-09-24 13:15 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-22 0:13 [PATCH v5 00/17] Allow changing of Hypervisor CPUIDs Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 01/17] target-i386: Allow tsc-frequency to be larger then 2.147G Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 15:23 ` Stefan Hajnoczi
2012-09-22 15:23 ` [Qemu-devel] " Stefan Hajnoczi
2012-09-22 0:13 ` [PATCH v5 02/17] target-i386: Add missing kvm bits Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 03/17] target-i386: Add Hypervisor level Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 04/17] target-i386: Add cpu object access routines for " Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 05/17] " Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 06/17] target-i386: Use Hypervisor level in -machine pc,accel=kvm Don Slutz
2012-09-22 0:13 ` [Qemu-devel] [PATCH v5 06/17] target-i386: Use Hypervisor level in -machine pc, accel=kvm Don Slutz
2012-09-22 0:13 ` [PATCH v5 07/17] target-i386: Use Hypervisor level in -machine pc,accel=tcg Don Slutz
2012-09-22 0:13 ` [Qemu-devel] [PATCH v5 07/17] target-i386: Use Hypervisor level in -machine pc, accel=tcg Don Slutz
2012-09-22 0:13 ` [PATCH v5 08/17] target-i386: Add Hypervisor vendor Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 09/17] target-i386: Add cpu object access routines for " Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 10/17] target-i386: Use Hypervisor vendor in -machine pc,accel=kvm Don Slutz
2012-09-22 0:13 ` [Qemu-devel] [PATCH v5 10/17] target-i386: Use Hypervisor vendor in -machine pc, accel=kvm Don Slutz
2012-09-22 0:13 ` [PATCH v5 11/17] target-i386: Use Hypervisor vendor in -machine pc,accel=tcg Don Slutz
2012-09-22 0:13 ` [Qemu-devel] [PATCH v5 11/17] target-i386: Use Hypervisor vendor in -machine pc, accel=tcg Don Slutz
2012-09-22 0:13 ` [PATCH v5 12/17] target-i386: Add some known names to Hypervisor vendor Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 13/17] target-i386: Add optional Hypervisor leaf extra Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 14/17] target-i386: Add cpu object access routines for " Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 15/17] target-i386: Add setting of Hypervisor leaf extra for known vmare4 Don Slutz
2012-09-22 0:13 ` [Qemu-devel] " Don Slutz
2012-09-22 0:13 ` [PATCH v5 16/17] target-i386: Use Hypervisor leaf extra in -machine pc,accel=kvm Don Slutz
2012-09-22 0:13 ` [Qemu-devel] [PATCH v5 16/17] target-i386: Use Hypervisor leaf extra in -machine pc, accel=kvm Don Slutz
2012-09-22 0:13 ` [PATCH v5 17/17] target-i386: Use Hypervisor leaf extra in -machine pc,accel=tcg Don Slutz
2012-09-22 0:13 ` [Qemu-devel] [PATCH v5 17/17] target-i386: Use Hypervisor leaf extra in -machine pc, accel=tcg Don Slutz
2012-09-22 13:18 ` [PATCH v5 00/17] Allow changing of Hypervisor CPUIDs Blue Swirl
2012-09-22 13:18 ` [Qemu-devel] " Blue Swirl
2012-09-24 13:15 ` Don Slutz [this message]
2012-09-24 13:15 ` Don Slutz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50605CEB.3050603@CloudSwitch.Com \
--to=don@cloudswitch.com \
--cc=afaerber@suse.de \
--cc=anthony@codemonkey.ws \
--cc=avi@redhat.com \
--cc=blauwirbel@gmail.com \
--cc=ehabkost@redhat.com \
--cc=imammedo@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.