Hi Andrew, I have been asked for a cmpxchg_local implementation by Christoph Lameter so he can use it to accelerate the slub allocator. On some architectures, where cmpxchg is nothing more that a simple save/restore interrupts surrounding the cmpxchg non atomic ops, I remove the code and make them use the new "generic" version. cmpxchg_local and cmpxchg64_local are made available on all architectures in these patches. They use the best primitive known, either an atomic operation or save/restore interrupts. Mathieu -- Mathieu Desnoyers Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- Re: [patch 00/23] Atomic operations updates: add cmpxchg_local
- From: Christoph Lameter <[email protected]>
- [patch 04/23] Add cmpxchg_local to avr32
- From: Mathieu Desnoyers <[email protected]>
- [patch 23/23] Add cmpxchg_local to xtensa
- From: Mathieu Desnoyers <[email protected]>
- [patch 13/23] Add cmpxchg_local to m86k
- From: Mathieu Desnoyers <[email protected]>
- [patch 06/23] Add cmpxchg_local to cris
- From: Mathieu Desnoyers <[email protected]>
- [patch 15/23] Add cmpxchg_local to parisc
- From: Mathieu Desnoyers <[email protected]>
- [patch 05/23] Add cmpxchg_local to blackfin, replace __cmpxchg by generic cmpxchg
- From: Mathieu Desnoyers <[email protected]>
- [patch 20/23] Add cmpxchg_local to sparc, move __cmpxchg to system.h
- From: Mathieu Desnoyers <[email protected]>
- Re: [patch 00/23] Atomic operations updates: add cmpxchg_local
- From: Mathieu Desnoyers <[email protected]>
- [patch 14/23] Add cmpxchg_local to m68knommu
- From: Mathieu Desnoyers <[email protected]>
- [patch 03/23] Add cmpxchg_local to arm
- From: Mathieu Desnoyers <[email protected]>
- [patch 17/23] Add cmpxchg_local to s390
- From: Mathieu Desnoyers <[email protected]>
- [patch 16/23] Add cmpxchg_local to ppc
- From: Mathieu Desnoyers <[email protected]>
- [patch 21/23] Add cmpxchg_local to sparc64
- From: Mathieu Desnoyers <[email protected]>
- [patch 19/23] Add cmpxchg_local to sh64
- From: Mathieu Desnoyers <[email protected]>
- [patch 22/23] Add cmpxchg_local to v850
- From: Mathieu Desnoyers <[email protected]>
- [patch 09/23] Add cmpxchg_local, cmpxchg64 and cmpxchg64_local to ia64
- From: Mathieu Desnoyers <[email protected]>
- [patch 12/23] local_t m32r use architecture specific cmpxchg_local
- From: Mathieu Desnoyers <[email protected]>
- [patch 10/23] New cmpxchg_local (optimized for UP case) for m32r
- From: Mathieu Desnoyers <[email protected]>
- [patch 01/23] Fall back on interrupt disable in cmpxchg8b on 80386 and 80486
- From: Mathieu Desnoyers <[email protected]>
- [patch 18/23] Add cmpxchg_local to sh, use generic cmpxchg() instead of cmpxchg_u32
- From: Mathieu Desnoyers <[email protected]>
- [patch 11/23] Fix m32r __xchg
- From: Mathieu Desnoyers <[email protected]>
- [patch 08/23] Add cmpxchg_local to h8300
- From: Mathieu Desnoyers <[email protected]>
- [patch 07/23] Add cmpxchg_local to frv
- From: Mathieu Desnoyers <[email protected]>
- [patch 02/23] Add cmpxchg_local to asm-generic for per cpu atomic operations
- From: Mathieu Desnoyers <[email protected]>
- Re: [patch 00/23] Atomic operations updates: add cmpxchg_local
- Prev by Date: Re: Improving read/write/close system call reliability when used with pthreads
- Next by Date: [patch 02/23] Add cmpxchg_local to asm-generic for per cpu atomic operations
- Previous by thread: Improving read/write/close system call reliability when used with pthreads
- Next by thread: [patch 02/23] Add cmpxchg_local to asm-generic for per cpu atomic operations
- Index(es):