Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1739074 > unrolled thread

Re: [PATCH v3 0/2] guard virt_spin_lock() with a static key

Started byJuergen Gross <jgross@suse.com>
First post2017-09-25 16:00 +0200
Last post2017-09-25 16:50 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH v3 0/2] guard virt_spin_lock() with a static key Juergen Gross <jgross@suse.com> - 2017-09-25 16:00 +0200
    Re: [PATCH v3 0/2] guard virt_spin_lock() with a static key Waiman Long <longman@redhat.com> - 2017-09-25 16:50 +0200

#1739074 — Re: [PATCH v3 0/2] guard virt_spin_lock() with a static key

FromJuergen Gross <jgross@suse.com>
Date2017-09-25 16:00 +0200
SubjectRe: [PATCH v3 0/2] guard virt_spin_lock() with a static key
Message-ID<utC5r-76I-3@gated-at.bofh.it>
Ping?

On 06/09/17 19:36, Juergen Gross wrote:
> With virt_spin_lock() being guarded by a static key the bare metal case
> can be optimized by patching the call away completely. In case a kernel
> running as a guest it can decide whether to use paravitualized
> spinlocks, the current fallback to the unfair test-and-set scheme, or
> to mimic the bare metal behavior.
> 
> V3:
> - remove test for hypervisor environment from virt_spin_lock(9 as
>   suggested by Waiman Long
> 
> V2:
> - use static key instead of making virt_spin_lock() a pvops function
> 
> Juergen Gross (2):
>   paravirt/locks: use new static key for controlling call of
>     virt_spin_lock()
>   paravirt,xen: correct xen_nopvspin case
> 
>  arch/x86/include/asm/qspinlock.h     | 11 ++++++++++-
>  arch/x86/kernel/paravirt-spinlocks.c |  6 ++++++
>  arch/x86/kernel/smpboot.c            |  2 ++
>  arch/x86/xen/spinlock.c              |  2 ++
>  kernel/locking/qspinlock.c           |  4 ++++
>  5 files changed, 24 insertions(+), 1 deletion(-)
> 

[toc] | [next] | [standalone]


#1739097

FromWaiman Long <longman@redhat.com>
Date2017-09-25 16:50 +0200
Message-ID<utCRQ-7FH-15@gated-at.bofh.it>
In reply to#1739074
On 09/25/2017 09:59 AM, Juergen Gross wrote:
> Ping?
>
> On 06/09/17 19:36, Juergen Gross wrote:
>> With virt_spin_lock() being guarded by a static key the bare metal case
>> can be optimized by patching the call away completely. In case a kernel
>> running as a guest it can decide whether to use paravitualized
>> spinlocks, the current fallback to the unfair test-and-set scheme, or
>> to mimic the bare metal behavior.
>>
>> V3:
>> - remove test for hypervisor environment from virt_spin_lock(9 as
>>   suggested by Waiman Long
>>
>> V2:
>> - use static key instead of making virt_spin_lock() a pvops function
>>
>> Juergen Gross (2):
>>   paravirt/locks: use new static key for controlling call of
>>     virt_spin_lock()
>>   paravirt,xen: correct xen_nopvspin case
>>
>>  arch/x86/include/asm/qspinlock.h     | 11 ++++++++++-
>>  arch/x86/kernel/paravirt-spinlocks.c |  6 ++++++
>>  arch/x86/kernel/smpboot.c            |  2 ++
>>  arch/x86/xen/spinlock.c              |  2 ++
>>  kernel/locking/qspinlock.c           |  4 ++++
>>  5 files changed, 24 insertions(+), 1 deletion(-)
>>
Acked-by: Waiman Long <longman@redhat.com>

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web