2013-09-04 08:42:59

by Raghavendra K T

[permalink] [raw]
Subject: [PATCH V2] Documentation/kvm: Update cpuid documentation for steal time and pv eoi

Signed-off-by: Raghavendra K T <[email protected]>
---
Changes in V2:
Correction in the description of steal time and added msr info (Michael S Tsirkin)

Documentation/virtual/kvm/cpuid.txt | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/Documentation/virtual/kvm/cpuid.txt b/Documentation/virtual/kvm/cpuid.txt
index 22ff659..6c4fb20 100644
--- a/Documentation/virtual/kvm/cpuid.txt
+++ b/Documentation/virtual/kvm/cpuid.txt
@@ -43,6 +43,16 @@ KVM_FEATURE_CLOCKSOURCE2 || 3 || kvmclock available at msrs
KVM_FEATURE_ASYNC_PF || 4 || async pf can be enabled by
|| || writing to msr 0x4b564d02
------------------------------------------------------------------------------
+KVM_FEATURE_STEAL_TIME || 5 || Steal time available at msr
+ || || 0x4b564d03. The feature is enabled
+ || || by guest when host has schedstat
+ || || or task delay accounting support.
+------------------------------------------------------------------------------
+KVM_FEATURE_PV_EOI || 6 || overrides the generic EOI
+ || || implementation with a
+ || || paravirtualized version. Available
+ || || at msr 0x4b564d04.
+------------------------------------------------------------------------------
KVM_FEATURE_PV_UNHALT || 7 || guest checks this feature bit
|| || before enabling paravirtualized
|| || spinlock support.
--
1.7.11.7


2013-09-12 05:15:47

by Raghavendra K T

[permalink] [raw]
Subject: Re: [PATCH V2] Documentation/kvm: Update cpuid documentation for steal time and pv eoi

On 09/04/2013 02:18 PM, Raghavendra K T wrote:
> Signed-off-by: Raghavendra K T <[email protected]>
> ---
> Changes in V2:
> Correction in the description of steal time and added msr info (Michael S Tsirkin)
>
> Documentation/virtual/kvm/cpuid.txt | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/Documentation/virtual/kvm/cpuid.txt b/Documentation/virtual/kvm/cpuid.txt
> index 22ff659..6c4fb20 100644
> --- a/Documentation/virtual/kvm/cpuid.txt
> +++ b/Documentation/virtual/kvm/cpuid.txt
> @@ -43,6 +43,16 @@ KVM_FEATURE_CLOCKSOURCE2 || 3 || kvmclock available at msrs
> KVM_FEATURE_ASYNC_PF || 4 || async pf can be enabled by
> || || writing to msr 0x4b564d02
> ------------------------------------------------------------------------------
> +KVM_FEATURE_STEAL_TIME || 5 || Steal time available at msr
> + || || 0x4b564d03. The feature is enabled
> + || || by guest when host has schedstat
> + || || or task delay accounting support.
> +------------------------------------------------------------------------------
> +KVM_FEATURE_PV_EOI || 6 || overrides the generic EOI
> + || || implementation with a
> + || || paravirtualized version. Available
> + || || at msr 0x4b564d04.
> +------------------------------------------------------------------------------
> KVM_FEATURE_PV_UNHALT || 7 || guest checks this feature bit
> || || before enabling paravirtualized
> || || spinlock support.
>

Michael,

Are you okay with the above patch. Please let me know.

2013-09-12 05:42:52

by Michael S. Tsirkin

[permalink] [raw]
Subject: Re: [PATCH V2] Documentation/kvm: Update cpuid documentation for steal time and pv eoi

On Wed, Sep 04, 2013 at 02:18:46PM +0530, Raghavendra K T wrote:
> Signed-off-by: Raghavendra K T <[email protected]>
> ---
> Changes in V2:
> Correction in the description of steal time and added msr info (Michael S Tsirkin)

Thanks. Some comments below:

> Documentation/virtual/kvm/cpuid.txt | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/Documentation/virtual/kvm/cpuid.txt b/Documentation/virtual/kvm/cpuid.txt
> index 22ff659..6c4fb20 100644
> --- a/Documentation/virtual/kvm/cpuid.txt
> +++ b/Documentation/virtual/kvm/cpuid.txt
> @@ -43,6 +43,16 @@ KVM_FEATURE_CLOCKSOURCE2 || 3 || kvmclock available at msrs
> KVM_FEATURE_ASYNC_PF || 4 || async pf can be enabled by
> || || writing to msr 0x4b564d02
> ------------------------------------------------------------------------------
> +KVM_FEATURE_STEAL_TIME || 5 || Steal time available at msr
> + || || 0x4b564d03. The feature is enabled
> + || || by guest when host has schedstat
> + || || or task delay accounting support.

Well I think we really should be documenting the host/guest interface
here.
After all it starts out
A guest running on a kvm host, can check some of its features using
cpuid.
And guests really should not try to guess whether host
has schedstat or task delay accounting support based on this bit.
So I would just say:
"steal time can be enabled by writing to msr 0x4b564d02"
just like async pf.


> +------------------------------------------------------------------------------
> +KVM_FEATURE_PV_EOI || 6 || overrides the generic EOI
> + || || implementation with a
> + || || paravirtualized version. Available
> + || || at msr 0x4b564d04.

Actually there's no override: guest can still use the
standard EOI even if PV EOI MSR is enabled.

There's a detailed explanation of PV EOI in
Documentation/virtual/kvm/msr.txt
I think the following would be enough:

"paravirtualized end of interrupt handler can be enabled by writing to msr 0x4b564d04"


> +------------------------------------------------------------------------------
> KVM_FEATURE_PV_UNHALT || 7 || guest checks this feature bit
> || || before enabling paravirtualized
> || || spinlock support.
> --
> 1.7.11.7


2013-09-12 07:04:32

by Raghavendra K T

[permalink] [raw]
Subject: Re: [PATCH V2] Documentation/kvm: Update cpuid documentation for steal time and pv eoi

On 09/12/2013 11:14 AM, Michael S. Tsirkin wrote:
> On Wed, Sep 04, 2013 at 02:18:46PM +0530, Raghavendra K T wrote:
[...]
>> ------------------------------------------------------------------------------
>> +KVM_FEATURE_STEAL_TIME || 5 || Steal time available at msr
>> + || || 0x4b564d03. The feature is enabled
>> + || || by guest when host has schedstat
>> + || || or task delay accounting support.
>
> Well I think we really should be documenting the host/guest interface
> here.
> After all it starts out
> A guest running on a kvm host, can check some of its features using
> cpuid.
> And guests really should not try to guess whether host
> has schedstat or task delay accounting support based on this bit.
> So I would just say:
> "steal time can be enabled by writing to msr 0x4b564d02"
> just like async pf.
>

It makes sense. will stick to the above line.

>
>> +------------------------------------------------------------------------------
>> +KVM_FEATURE_PV_EOI || 6 || overrides the generic EOI
>> + || || implementation with a
>> + || || paravirtualized version. Available
>> + || || at msr 0x4b564d04.
>
> Actually there's no override: guest can still use the
> standard EOI even if PV EOI MSR is enabled.
>
> There's a detailed explanation of PV EOI in
> Documentation/virtual/kvm/msr.txt
> I think the following would be enough:
>
> "paravirtualized end of interrupt handler can be enabled by writing to msr 0x4b564d04"
>

Okay.
Thanks Michael.