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


Groups > linux.kernel > #1505127

[PATCH v5 7/9] x86, xen: support vcpu preempted check

From Pan Xinhui <xinhui.pan@linux.vnet.ibm.com>
Newsgroups linux.kernel
Subject [PATCH v5 7/9] x86, xen: support vcpu preempted check
Date 2016-10-20 19:40 +0200
Message-ID <suptU-2bV-37@gated-at.bofh.it> (permalink)
References <suptT-2bV-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: Juergen Gross <jgross@suse.com>

Support the vcpu_is_preempted() functionality under Xen. This will
enhance lock performance on overcommitted hosts (more runnable vcpus
than physical cpus in the system) as doing busy waits for preempted
vcpus will hurt system performance far worse than early yielding.

A quick test (4 vcpus on 1 physical cpu doing a parallel build job
with "make -j 8") reduced system time by about 5% with this patch.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Pan Xinhui <xinhui.pan@linux.vnet.ibm.com>
---
 arch/x86/xen/spinlock.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/x86/xen/spinlock.c b/arch/x86/xen/spinlock.c
index 3d6e006..74756bb 100644
--- a/arch/x86/xen/spinlock.c
+++ b/arch/x86/xen/spinlock.c
@@ -114,7 +114,6 @@ void xen_uninit_lock_cpu(int cpu)
 	per_cpu(irq_name, cpu) = NULL;
 }
 
-
 /*
  * Our init of PV spinlocks is split in two init functions due to us
  * using paravirt patching and jump labels patching and having to do
@@ -137,6 +136,8 @@ void __init xen_init_spinlocks(void)
 	pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(__pv_queued_spin_unlock);
 	pv_lock_ops.wait = xen_qlock_wait;
 	pv_lock_ops.kick = xen_qlock_kick;
+
+	pv_lock_ops.vcpu_is_preempted = xen_vcpu_stolen;
 }
 
 /*
-- 
2.4.11

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v5 0/9] implement vcpu preempted check Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 2/9] locking/osq: Drop the overload of osq_lock() Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 8/9] s390/spinlock: Provide vcpu_is_preempted Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 3/9] kernel/locking: Drop the overload of {mutex,rwsem}_spin_on_owner Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 1/9] kernel/sched: introduce vcpu preempted check interface Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 7/9] x86, xen: support vcpu preempted check Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
    Re: [PATCH v5 7/9] x86, xen: support vcpu preempted check Juergen Gross <jgross@suse.com> - 2016-10-21 07:10 +0200
  [PATCH v5 5/9] x86, paravirt: Add interface to support kvm/xen vcpu preempted check Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu preempted check Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
    Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu  preempted check Boqun Feng <boqun.feng@gmail.com> - 2016-10-21 03:30 +0200
    RE: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu  preempted check David Laight <David.Laight@ACULAB.COM> - 2016-10-21 13:40 +0200
      Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu  preempted check "rkrcmar@redhat.com" <rkrcmar@redhat.com> - 2016-10-21 20:50 +0200
        Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu preempted  check xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-24 04:50 +0200
        Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu  preempted check Paolo Bonzini <pbonzini@redhat.com> - 2016-10-24 16:50 +0200
          Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu  preempted check "rkrcmar@redhat.com" <rkrcmar@redhat.com> - 2016-10-24 17:10 +0200
      Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu preempted  check xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-24 04:50 +0200
    Re: [PATCH v5 9/9] Documentation: virtual: kvm: Support vcpu preempted  check xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-24 10:20 +0200
  [PATCH v5 4/9] powerpc/spinlock: support vcpu preempted check Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
  [PATCH v5 6/9] x86, kvm: support vcpu preempted check Pan Xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-20 19:40 +0200
    Re: [PATCH v5 6/9] x86, kvm: support vcpu preempted check xinhui <xinhui.pan@linux.vnet.ibm.com> - 2016-10-24 10:10 +0200
  Re: [PATCH v5 0/9] implement vcpu preempted check Peter Zijlstra <peterz@infradead.org> - 2016-10-21 07:50 +0200

csiph-web