Displaying 20 results from an estimated 25 matches for "lock_spinn".
2012 Oct 17
28
Xen PVM: Strange lockups when running PostgreSQL load
...as guests.
The pv spinlock assumption I will try to get re-verified by asking
to reproduce under a real load with a kernel that just disables
that. However, the dumps I am looking at really do look odd there.
The first dump I looked at had the spinlock of runqueue[0] being
placed into the per-cpu lock_spinners variable for cpu#0 and
cpu#7 (doing my tests with 8 VCPUs). So apparently both cpus were
waiting on the slow path for it to become free. Though actually
it was free! Now, here is one issue I have in understanding the
dump: the back traces produced in crash are in the normal form
not showing any...
2010 Nov 16
23
[PATCH 00/14] PV ticket locks without expanding spinlock
...ticketlock: make __ticket_spin_lock common
x86/ticketlock: make __ticket_spin_trylock common
x86/spinlocks: replace pv spinlocks with pv ticketlocks
x86/ticketlock: collapse a layer of functions
xen/pvticketlock: Xen implementation for PV ticket locks
x86/pvticketlock: use callee-save for lock_spinning
x86/ticketlock: don't inline _spin_unlock when using paravirt
spinlocks
x86/ticketlocks: when paravirtualizing ticket locks, increment by 2
x86/ticketlock: add slowpath logic
x86/ticketlocks: tidy up __ticket_unlock_kick()
arch/x86/Kconfig | 3 +
arch/x8...
2010 Nov 16
23
[PATCH 00/14] PV ticket locks without expanding spinlock
...ticketlock: make __ticket_spin_lock common
x86/ticketlock: make __ticket_spin_trylock common
x86/spinlocks: replace pv spinlocks with pv ticketlocks
x86/ticketlock: collapse a layer of functions
xen/pvticketlock: Xen implementation for PV ticket locks
x86/pvticketlock: use callee-save for lock_spinning
x86/ticketlock: don't inline _spin_unlock when using paravirt
spinlocks
x86/ticketlocks: when paravirtualizing ticket locks, increment by 2
x86/ticketlock: add slowpath logic
x86/ticketlocks: tidy up __ticket_unlock_kick()
arch/x86/Kconfig | 3 +
arch/x8...
2010 Nov 16
23
[PATCH 00/14] PV ticket locks without expanding spinlock
...ticketlock: make __ticket_spin_lock common
x86/ticketlock: make __ticket_spin_trylock common
x86/spinlocks: replace pv spinlocks with pv ticketlocks
x86/ticketlock: collapse a layer of functions
xen/pvticketlock: Xen implementation for PV ticket locks
x86/pvticketlock: use callee-save for lock_spinning
x86/ticketlock: don't inline _spin_unlock when using paravirt
spinlocks
x86/ticketlocks: when paravirtualizing ticket locks, increment by 2
x86/ticketlock: add slowpath logic
x86/ticketlocks: tidy up __ticket_unlock_kick()
arch/x86/Kconfig | 3 +
arch/x8...
2010 Nov 03
25
[PATCH 00/20] x86: ticket lock rewrite and paravirtualization
...6/ticketlock: make __ticket_spin_trylock common
x86/spinlocks: replace pv spinlocks with pv ticketlocks
x86/ticketlock: collapse a layer of functions
xen/pvticketlock: Xen implementation for PV ticket locks
x86/pvticketlock: keep count of blocked cpus
x86/pvticketlock: use callee-save for lock_spinning
x86/pvticketlock: use callee-save for unlock_kick as well
x86/pvticketlock: make sure unlock is seen by everyone before
checking waiters
x86/ticketlock: loosen ordering restraints on unlock
x86/ticketlock: prevent compiler reordering into locked region
x86/ticketlock: don't inl...
2010 Nov 03
25
[PATCH 00/20] x86: ticket lock rewrite and paravirtualization
...6/ticketlock: make __ticket_spin_trylock common
x86/spinlocks: replace pv spinlocks with pv ticketlocks
x86/ticketlock: collapse a layer of functions
xen/pvticketlock: Xen implementation for PV ticket locks
x86/pvticketlock: keep count of blocked cpus
x86/pvticketlock: use callee-save for lock_spinning
x86/pvticketlock: use callee-save for unlock_kick as well
x86/pvticketlock: make sure unlock is seen by everyone before
checking waiters
x86/ticketlock: loosen ordering restraints on unlock
x86/ticketlock: prevent compiler reordering into locked region
x86/ticketlock: don't inl...
2010 Nov 03
25
[PATCH 00/20] x86: ticket lock rewrite and paravirtualization
...6/ticketlock: make __ticket_spin_trylock common
x86/spinlocks: replace pv spinlocks with pv ticketlocks
x86/ticketlock: collapse a layer of functions
xen/pvticketlock: Xen implementation for PV ticket locks
x86/pvticketlock: keep count of blocked cpus
x86/pvticketlock: use callee-save for lock_spinning
x86/pvticketlock: use callee-save for unlock_kick as well
x86/pvticketlock: make sure unlock is seen by everyone before
checking waiters
x86/ticketlock: loosen ordering restraints on unlock
x86/ticketlock: prevent compiler reordering into locked region
x86/ticketlock: don't inl...
2012 Mar 21
15
[PATCH RFC V6 0/11] Paravirtualized ticketlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2012 Mar 21
15
[PATCH RFC V6 0/11] Paravirtualized ticketlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2012 Apr 19
13
[PATCH RFC V7 0/12] Paravirtualized ticketlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2012 Apr 19
13
[PATCH RFC V7 0/12] Paravirtualized ticketlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2013 Aug 06
16
[PATCH V12 0/14] Paravirtualized ticket spinlocks
...needs to revert below two patches to enable xen on hvm
70dd4998, f10cd522c
Changes in V12
- spiltted uapi header patch.
- dropped patch 18.
- bailout of lock spinning in case of NMI (Gleb)
- drop out patch 18 whose benefits are inconclusive (Gleb, Ingo)
Changes in V11:
- use safe_halt in lock_spinning path to avoid potential problem
in case of irq_handlers taking lock in slowpath (Gleb)
- add a0 flag for the kick hypercall for future extension (Gleb)
- add stubs for missing architecture for kvm_vcpu_schedule() (Gleb)
- Change hypercall documentation.
- Rebased to 3.11-rc1
Changes in...
2013 Aug 06
16
[PATCH V12 0/14] Paravirtualized ticket spinlocks
...needs to revert below two patches to enable xen on hvm
70dd4998, f10cd522c
Changes in V12
- spiltted uapi header patch.
- dropped patch 18.
- bailout of lock spinning in case of NMI (Gleb)
- drop out patch 18 whose benefits are inconclusive (Gleb, Ingo)
Changes in V11:
- use safe_halt in lock_spinning path to avoid potential problem
in case of irq_handlers taking lock in slowpath (Gleb)
- add a0 flag for the kick hypercall for future extension (Gleb)
- add stubs for missing architecture for kvm_vcpu_schedule() (Gleb)
- Change hypercall documentation.
- Rebased to 3.11-rc1
Changes in...
2013 Aug 06
16
[PATCH V12 0/14] Paravirtualized ticket spinlocks
...needs to revert below two patches to enable xen on hvm
70dd4998, f10cd522c
Changes in V12
- spiltted uapi header patch.
- dropped patch 18.
- bailout of lock spinning in case of NMI (Gleb)
- drop out patch 18 whose benefits are inconclusive (Gleb, Ingo)
Changes in V11:
- use safe_halt in lock_spinning path to avoid potential problem
in case of irq_handlers taking lock in slowpath (Gleb)
- add a0 flag for the kick hypercall for future extension (Gleb)
- add stubs for missing architecture for kvm_vcpu_schedule() (Gleb)
- Change hypercall documentation.
- Rebased to 3.11-rc1
Changes in...
2013 Jun 24
19
[PATCH RFC V10 0/18] Paravirtualized ticket spinlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2013 Jun 24
19
[PATCH RFC V10 0/18] Paravirtualized ticket spinlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2013 Jun 24
19
[PATCH RFC V10 0/18] Paravirtualized ticket spinlocks
...Xen (and for other pvops users, but
there are none at present).
PV ticketlocks keeps the existing ticketlock implemenentation
(fastpath) as-is, but adds a couple of pvops for the slow paths:
- If a CPU has been waiting for a spinlock for SPIN_THRESHOLD
iterations, then call out to the __ticket_lock_spinning() pvop,
which allows a backend to block the vCPU rather than spinning. This
pvop can set the lock into "slowpath state".
- When releasing a lock, if it is in "slowpath state", the call
__ticket_unlock_kick() to kick the next vCPU in line awake. If the
lock is no lo...
2013 Jul 22
21
[PATCH RFC V11 0/18] Paravirtualized ticket spinlocks
This series replaces the existing paravirtualized spinlock mechanism
with a paravirtualized ticketlock mechanism. The series provides
implementation for both Xen and KVM.
Changes in V11:
- use safe_halt in lock_spinning path to avoid potential problem
in case of irq_handlers taking lock in slowpath (Gleb)
- add a0 flag for the kick hypercall for future extension (Gleb)
- add stubs for missing architecture for kvm_vcpu_schedule() (Gleb)
- Change hypercall documentation.
- Rebased to 3.11-rc1
Changes in...
2013 Jul 22
21
[PATCH RFC V11 0/18] Paravirtualized ticket spinlocks
This series replaces the existing paravirtualized spinlock mechanism
with a paravirtualized ticketlock mechanism. The series provides
implementation for both Xen and KVM.
Changes in V11:
- use safe_halt in lock_spinning path to avoid potential problem
in case of irq_handlers taking lock in slowpath (Gleb)
- add a0 flag for the kick hypercall for future extension (Gleb)
- add stubs for missing architecture for kvm_vcpu_schedule() (Gleb)
- Change hypercall documentation.
- Rebased to 3.11-rc1
Changes in...
2013 Jul 22
21
[PATCH RFC V11 0/18] Paravirtualized ticket spinlocks
This series replaces the existing paravirtualized spinlock mechanism
with a paravirtualized ticketlock mechanism. The series provides
implementation for both Xen and KVM.
Changes in V11:
- use safe_halt in lock_spinning path to avoid potential problem
in case of irq_handlers taking lock in slowpath (Gleb)
- add a0 flag for the kick hypercall for future extension (Gleb)
- add stubs for missing architecture for kvm_vcpu_schedule() (Gleb)
- Change hypercall documentation.
- Rebased to 3.11-rc1
Changes in...