lkml.org 
[lkml]   [2011]   [Aug]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 00/18] x86: Ticket lock + cmpxchg cleanup
On 08/24/2011 02:36 PM, Jeremy Fitzhardinge wrote:
> From: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
>
> Hi all,
>
> Another spin of the cmpxchg/xadd/ticketlock cleanups.
>
> Changes from last post:
> - reorder all the cmpxchg/xadd patches first
> - change xadd to return prev rather than implicitly update arg
> - recast ticketlock cleanup in terms of xadd
> - drop conversion of unlock to C
>
> This is also available at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git upstream/ticketlock-cleanup
>
> arch/x86/include/asm/atomic.h | 8 +-
> arch/x86/include/asm/atomic64_64.h | 6 +-
> arch/x86/include/asm/cacheflush.h | 2 +-
> arch/x86/include/asm/cmpxchg.h | 232 +++++++++++++++++++++++++++++++++
> arch/x86/include/asm/cmpxchg_32.h | 128 ++----------------
> arch/x86/include/asm/cmpxchg_64.h | 131 -------------------
> arch/x86/include/asm/rwsem.h | 15 +--
> arch/x86/include/asm/spinlock.h | 110 ++++------------
> arch/x86/include/asm/spinlock_types.h | 22 +++-
> arch/x86/include/asm/uv/uv_bau.h | 6 +-
> arch/x86/kernel/acpi/boot.c | 10 +-
> arch/x86/kernel/cpu/mcheck/mce.c | 2 +-
> arch/x86/xen/p2m.c | 10 +-
> 13 files changed, 311 insertions(+), 371 deletions(-)
>
> Thanks,
> J

Uh, that's 00/12, and ignore the below; that's left over from the
previous posting.

J

>
> Jeremy Fitzhardinge (18):
> x86/ticketlock: clean up types and accessors
> x86/ticketlock: convert spin loop to C
> x86/ticketlock: Use C for __ticket_spin_unlock
> x86/ticketlock: make large and small ticket versions of spin_lock the
> same
> x86/ticketlock: make __ticket_spin_lock common
> x86/ticketlock: make __ticket_spin_trylock common
> x86: add xadd helper macro
> x86/ticketlock: use xadd helper
> x86/cmpxchg: linux/alternative.h has LOCK_PREFIX
> x86/cmpxchg: move 32-bit __cmpxchg_wrong_size to match 64 bit.
> x86/cmpxchg: move 64-bit set64_bit() to match 32-bit
> x86/cmpxchg: unify cmpxchg into cmpxchg.h
> x86: add cmpxchg_flag() variant
> x86/ticketlocks: use cmpxchg_flag for trylock
> x86: use cmpxchg_flag() where applicable
> x86: report xchg/cmpxchg/xadd usage errors consistently
> x86: add local and sync variants of xadd
> x86: use xadd helper more widely
>
> arch/x86/include/asm/atomic.h | 4 +-
> arch/x86/include/asm/atomic64_64.h | 4 +-
> arch/x86/include/asm/cacheflush.h | 2 +-
> arch/x86/include/asm/cmpxchg.h | 223 +++++++++++++++++++++++++++++++++
> arch/x86/include/asm/cmpxchg_32.h | 128 ++-----------------
> arch/x86/include/asm/cmpxchg_64.h | 131 -------------------
> arch/x86/include/asm/rwsem.h | 11 +--
> arch/x86/include/asm/spinlock.h | 140 +++++++--------------
> arch/x86/include/asm/spinlock_types.h | 22 +++-
> arch/x86/include/asm/uv/uv_bau.h | 4 +-
> arch/x86/kernel/acpi/boot.c | 10 +-
> arch/x86/kernel/cpu/mcheck/mce.c | 2 +-
> arch/x86/xen/p2m.c | 10 +-
> 13 files changed, 321 insertions(+), 370 deletions(-)
>



\
 
 \ /
  Last update: 2011-08-24 23:49    [W:0.981 / U:1.412 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site