Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull locking updates from Ingo Molnar: "So we have a laundry list of locking subsystem changes: - continuing barrier API and code improvements - futex enhancements - atomics API improvements - pvqspinlock enhancements: in particular lock stealing and adaptive spinning - qspinlock micro-enhancements" * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op futex: Cleanup the goto confusion in requeue_pi() futex: Remove pointless put_pi_state calls in requeue() futex: Document pi_state refcounting in requeue code futex: Rename free_pi_state() to put_pi_state() futex: Drop refcount if requeue_pi() acquired the rtmutex locking/barriers, arch: Remove ambiguous statement in the smp_store_mb() documentation lcoking/barriers, arch: Use smp barriers in smp_store_release() locking/cmpxchg, arch: Remove tas() definitions locking/pvqspinlock: Queue node adaptive spinning locking/pvqspinlock: Allow limited lock stealing locking/pvqspinlock: Collect slowpath lock statistics sched/core, locking: Document Program-Order guarantees locking, sched: Introduce smp_cond_acquire() and use it locking/pvqspinlock, x86: Optimize the PV unlock code path locking/qspinlock: Avoid redundant read of next pointer locking/qspinlock: Prefetch the next node cacheline locking/qspinlock: Use _acquire/_release() versions of cmpxchg() & xchg() atomics: Add test for atomic operations with _relaxed variants
No related branches found
No related tags found
Showing
- Documentation/memory-barriers.txt 2 additions, 2 deletionsDocumentation/memory-barriers.txt
- arch/blackfin/include/asm/cmpxchg.h 0 additions, 1 deletionarch/blackfin/include/asm/cmpxchg.h
- arch/c6x/include/asm/cmpxchg.h 0 additions, 2 deletionsarch/c6x/include/asm/cmpxchg.h
- arch/frv/include/asm/cmpxchg.h 0 additions, 2 deletionsarch/frv/include/asm/cmpxchg.h
- arch/ia64/include/asm/barrier.h 1 addition, 1 deletionarch/ia64/include/asm/barrier.h
- arch/powerpc/include/asm/barrier.h 1 addition, 1 deletionarch/powerpc/include/asm/barrier.h
- arch/s390/include/asm/barrier.h 1 addition, 1 deletionarch/s390/include/asm/barrier.h
- arch/tile/include/asm/cmpxchg.h 0 additions, 2 deletionsarch/tile/include/asm/cmpxchg.h
- arch/x86/Kconfig 8 additions, 0 deletionsarch/x86/Kconfig
- arch/x86/include/asm/qspinlock_paravirt.h 59 additions, 0 deletionsarch/x86/include/asm/qspinlock_paravirt.h
- include/asm-generic/barrier.h 1 addition, 1 deletioninclude/asm-generic/barrier.h
- include/asm-generic/qspinlock.h 5 additions, 4 deletionsinclude/asm-generic/qspinlock.h
- include/linux/compiler.h 17 additions, 0 deletionsinclude/linux/compiler.h
- kernel/futex.c 61 additions, 22 deletionskernel/futex.c
- kernel/locking/qspinlock.c 64 additions, 18 deletionskernel/locking/qspinlock.c
- kernel/locking/qspinlock_paravirt.h 212 additions, 40 deletionskernel/locking/qspinlock_paravirt.h
- kernel/locking/qspinlock_stat.h 300 additions, 0 deletionskernel/locking/qspinlock_stat.h
- kernel/sched/core.c 92 additions, 7 deletionskernel/sched/core.c
- kernel/sched/sched.h 1 addition, 1 deletionkernel/sched/sched.h
- lib/atomic64_test.c 79 additions, 41 deletionslib/atomic64_test.c
Please register or sign in to comment