Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-12 Thread Raghavendra K T
On 07/12/2012 04:28 PM, Nikunj A Dadhania wrote: On Wed, 11 Jul 2012 16:22:29 +0530, Raghavendra K T wrote: On 07/11/2012 02:23 PM, Avi Kivity wrote: This adds some tiny overhead to vcpu entry. You could remove it by using the vcpu->requests mechanism to clear the flag, since vcpu->requests

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-12 Thread Nikunj A Dadhania
On Wed, 11 Jul 2012 16:22:29 +0530, Raghavendra K T wrote: > On 07/11/2012 02:23 PM, Avi Kivity wrote: > > > > This adds some tiny overhead to vcpu entry. You could remove it by > > using the vcpu->requests mechanism to clear the flag, since > > vcpu->requests is already checked on every entry.

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-11 Thread Andrew Jones
- Original Message - > > > > Hm, suppose we're the next-in-line for a ticket lock and exit due > > to > > PLE. The lock holder completes and unlocks, which really assigns > > the > > lock to us. So now we are the lock owner, yet we are marked as > > don't > > yield-to-us in the PLE code

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-11 Thread Raghavendra K T
On 07/11/2012 04:48 PM, Avi Kivity wrote: On 07/11/2012 01:52 PM, Raghavendra K T wrote: On 07/11/2012 02:23 PM, Avi Kivity wrote: On 07/09/2012 09:20 AM, Raghavendra K T wrote: Signed-off-by: Raghavendra K T Noting pause loop exited vcpu helps in filtering right candidate to yield. Yielding

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-11 Thread Avi Kivity
On 07/11/2012 01:52 PM, Raghavendra K T wrote: > On 07/11/2012 02:23 PM, Avi Kivity wrote: >> On 07/09/2012 09:20 AM, Raghavendra K T wrote: >>> Signed-off-by: Raghavendra K T >>> >>> Noting pause loop exited vcpu helps in filtering right candidate to >>> yield. >>> Yielding to same vcpu may result

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-11 Thread Raghavendra K T
On 07/11/2012 02:23 PM, Avi Kivity wrote: On 07/09/2012 09:20 AM, Raghavendra K T wrote: Signed-off-by: Raghavendra K T Noting pause loop exited vcpu helps in filtering right candidate to yield. Yielding to same vcpu may result in more wastage of cpu. struct kvm_lpage_info { diff --git a/ar

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-11 Thread Avi Kivity
On 07/09/2012 09:20 AM, Raghavendra K T wrote: > Signed-off-by: Raghavendra K T > > Noting pause loop exited vcpu helps in filtering right candidate to yield. > Yielding to same vcpu may result in more wastage of cpu. > > > struct kvm_lpage_info { > diff --git a/arch/x86/kvm/svm.c b/arch/x86/

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-10 Thread Raghavendra K T
On 07/10/2012 04:09 AM, Rik van Riel wrote: On 07/09/2012 02:20 AM, Raghavendra K T wrote: @@ -484,6 +484,13 @@ struct kvm_vcpu_arch { u64 length; u64 status; } osvw; + + /* Pause loop exit optimization */ + struct { + bool pause_loop_exited; + bool dy_eligible; + } plo; I know kvm_vcpu_arch

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-09 Thread Rik van Riel
On 07/09/2012 02:20 AM, Raghavendra K T wrote: @@ -484,6 +484,13 @@ struct kvm_vcpu_arch { u64 length; u64 status; } osvw; + + /* Pause loop exit optimization */ + struct { + bool pause_loop_exited; + bool dy_eligibl

Re: [PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-08 Thread Raghavendra K T
On 07/09/2012 11:50 AM, Raghavendra K T wrote: Signed-off-by: Raghavendra K T Noting pause loop exited vcpu helps in filtering right candidate to yield. Yielding to same vcpu may result in more wastage of cpu. From: Raghavendra K T --- Oops. Sorry some how sign-off and from interchanged.. int

[PATCH RFC 1/2] kvm vcpu: Note down pause loop exit

2012-07-08 Thread Raghavendra K T
Signed-off-by: Raghavendra K T Noting pause loop exited vcpu helps in filtering right candidate to yield. Yielding to same vcpu may result in more wastage of cpu. From: Raghavendra K T --- arch/x86/include/asm/kvm_host.h |7 +++ arch/x86/kvm/svm.c |1 + arch/x86/kvm/vm