aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/locking
AgeCommit message (Expand)AuthorFilesLines
2024-03-01locking/rtmutex: Use try_cmpxchg_relaxed() in mark_rt_mutex_waiters()Uros Bizjak1-4/+5
2024-02-28locking/percpu-rwsem: Trigger contention tracepoints only if contendedNamhyung Kim1-3/+8
2024-02-28locking/rwsem: Clarify that RWSEM_READER_OWNED is just a hintWaiman Long1-3/+3
2024-02-28locking/qspinlock: Fix 'wait_early' set but not used warningWaiman Long1-1/+1
2024-01-12Merge tag 'rcu.release.v6.8' of https://github.com/neeraju/linuxLinus Torvalds1-9/+9
2024-01-10Merge tag 'header_cleanup-2024-01-10' of https://evilpiepirate.org/git/bcachefsLinus Torvalds1-0/+1
2024-01-02Merge tag 'v6.7-rc8' into locking/core, to pick up dependent changesIngo Molnar2-18/+22
2023-12-30locking/osq_lock: Clarify osq_wait_next()David Laight1-5/+4
2023-12-30locking/osq_lock: Clarify osq_wait_next() calling conventionDavid Laight1-12/+9
2023-12-30locking/osq_lock: Move the definition of optimistic_spin_node into osq_lock.cDavid Laight1-0/+7
2023-12-20sched.h: move pid helpers to pid.hKent Overstreet1-0/+1
2023-12-01locking/mutex: Document that mutex_unlock() is non-atomicJann Horn1-0/+5
2023-11-24lockdep: Fix block chain corruptionPeter Zijlstra1-1/+2
2023-11-23locktorture: Increase Hamming distance between call_rcu_chain and rcu_call_ch...Paul E. McKenney1-9/+9
2023-10-30Merge tag 'rcu-next-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/fr...Linus Torvalds1-52/+162
2023-10-30Merge tag 'locking-core-2023-10-28' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds8-25/+96
2023-10-19locking: export contention tracepoints for bcachefs six locksBrian Foster1-0/+3
2023-10-12locking/lockdep: Fix string sizing bug that triggers a format-truncation comp...Lucy Mielke1-1/+1
2023-10-11locktorture: Check the correct variable for allocation failureDan Carpenter1-1/+1
2023-10-03locking/debug: Fix debugfs API return value checks to use IS_ERR()Atul Kumar Pant1-5/+5
2023-09-24locktorture: Rename readers_bind/writers_bind to bind_readers/bind_writersPaul E. McKenney1-14/+14
2023-09-24locktorture: Add call_rcu_chains module parameterPaul E. McKenney1-2/+60
2023-09-24locktorture: Add new module parameters to lock_torture_print_module_parms()Paul E. McKenney1-41/+23
2023-09-24locktorture: Add acq_writer_lim to complain about long acquistion timesPaul E. McKenney1-2/+13
2023-09-24locktorture: Consolidate "if" statements in lock_torture_writer()Paul E. McKenney1-3/+2
2023-09-24locktorture: Alphabetize torture_param() entriesPaul E. McKenney1-6/+6
2023-09-24locktorture: Add readers_bind and writers_bind module parametersPaul E. McKenney1-2/+62
2023-09-22locking/ww_mutex/test: Make sure we bail out instead of livelockJohn Stultz1-4/+5
2023-09-22locking/ww_mutex/test: Fix potential workqueue corruptionJohn Stultz1-8/+12
2023-09-22locking/ww_mutex/test: Use prng instead of rng to avoid hangs at bootupJohn Stultz1-2/+17
2023-09-20locking/rtmutex: Add a lockdep assert to catch potential nested blockingThomas Gleixner3-0/+6
2023-09-20locking/rtmutex: Use rt_mutex specific scheduler helpersSebastian Andrzej Siewior4-3/+29
2023-09-20locking/rtmutex: Avoid unconditional slowpath for DEBUG_RT_MUTEXESSebastian Andrzej Siewior2-2/+21
2023-08-29Merge tag 'mm-nonmm-stable-2023-08-28-22-48' of git://git.kernel.org/pub/scm/...Linus Torvalds1-22/+14
2023-08-28Merge tag 'x86-cleanups-2023-08-28' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-10/+10
2023-08-28Merge tag 'rcu.2023.08.21a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-5/+7
2023-08-21lockdep: fix static memory detection even moreHelge Deller1-22/+14
2023-08-14torture: Add lock_torture writer_fifo module parameterDietmar Eggemann1-5/+7
2023-08-03x86/qspinlock-paravirt: Fix missing-prototype warningArnd Bergmann1-10/+10
2023-07-17locking/rtmutex: Fix task->pi_waiters integrityPeter Zijlstra4-76/+155
2023-06-28Merge tag 'mm-nonmm-stable-2023-06-24-19-23' of git://git.kernel.org/pub/scm/...Linus Torvalds1-0/+4
2023-06-27Merge tag 'locking-core-2023-06-27' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-31/+87
2023-06-27Merge tag 'rcu.2023.06.22a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-29/+22
2023-06-09locking: add lockevent_read() prototypeArnd Bergmann1-0/+4
2023-05-28Merge tag 'core-debugobjects-2023-05-28' of git://git.kernel.org/pub/scm/linu...Linus Torvalds1-7/+21
2023-05-19lockdep: Add lock_set_cmp_fn() annotationKent Overstreet1-31/+87
2023-05-11locktorture: Add long_hold to adjust lock-hold delaysPaul E. McKenney1-29/+22
2023-05-08locking/rwsem: Add __always_inline annotation to __down_read_common() and inl...John Stultz1-4/+4
2023-05-05Merge tag 'locking-core-2023-05-05' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-9/+0
2023-05-02debugobjects,locking: Annotate debug_object_fill_pool() wait type violationPeter Zijlstra1-7/+21
2023-04-29locking/rwbase: Mitigate indefinite writer starvationSebastian Andrzej Siewior1-9/+0
2023-04-24Merge tag 'rcu.6.4.april5.2023.3' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds2-8/+58
2023-03-27locking/lockdep: Improve the deadlock scenario print for sync and read lockBoqun Feng1-16/+32
2023-03-27locking: Reduce the number of locks in ww_mutex stress testsBoqun Feng1-1/+1
2023-03-27locking/lockdep: Introduce lock_sync()Boqun Feng1-0/+34
2023-03-07locktorture: Add raw_spinlock* torture tests for PREEMPT_RT kernelsZqiang1-1/+55
2023-03-07locktorture: With nested locks, occasionally skip main lockJohn Stultz1-10/+27
2023-03-07locktorture: Add nested locking to rtmutex torture testsJohn Stultz1-0/+35
2023-03-07locktorture: Add nested locking to mutex torture testsJohn Stultz1-0/+35
2023-03-07locktorture: Add nested_[un]lock() hooks and nlocks parameterJohn Stultz1-4/+19
2023-02-21Merge tag 'rcu.2023.02.10a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-43/+58
2023-02-20Merge tag 'sched-core-2023-02-20' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-0/+3
2023-02-20Merge tag 'locking-core-2023-02-20' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds2-37/+54
2023-02-06rtmutex: Ensure that the top waiter is always woken upWander Lairson Costa1-2/+3
2023-01-31cpuidle: lib/bug: Disable rcu_is_watching() during WARN/BUGPeter Zijlstra1-0/+3
2023-01-26locking/rwsem: Disable preemption in all down_write*() and up_write() code pathsWaiman Long1-19/+19
2023-01-26locking/rwsem: Disable preemption in all down_read*() and up_read() code pathsWaiman Long1-6/+24
2023-01-26locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpathWaiman Long1-10/+9
2023-01-05locktorture: Make the rt_boost factor a tunableJoel Fernandes (Google)1-5/+7
2023-01-05locktorture: Allow non-rtmutex lock types to be boostedJoel Fernandes (Google)1-43/+56
2023-01-05locking/qspinlock: Micro-optimize pending state waiting for unlockGuo Ren1-2/+2
2023-01-01Merge tag 'locking_urgent_for_v6.2_rc2' of git://git.kernel.org/pub/scm/linux...Linus Torvalds2-12/+49
2022-12-13Merge tag 'mm-stable-2022-12-13' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-1/+0
2022-12-12rtmutex: Add acquire semantics for rtmutex lock acquisition slow pathMel Gorman2-12/+49
2022-12-11lockdep: allow instrumenting lockdep.c with KMSANAlexander Potapenko1-1/+0
2022-11-18treewide: use get_random_u32_below() instead of deprecated functionJason A. Donenfeld1-2/+2
2022-10-11treewide: use prandom_u32_max() when possible, part 1Jason A. Donenfeld1-2/+2
2022-10-10Merge tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-1/+2
2022-10-10Merge tag 'locking-core-2022-10-07' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds7-43/+55
2022-10-03kmsan: disable instrumentation of unsupported common kernel codeAlexander Potapenko1-1/+2
2022-09-21locking/lockdep: Print more debug information - report name and key when look...Tetsuo Handa1-2/+4
2022-09-21Merge tag 'v6.0-rc6' into locking/core, to refresh the branchIngo Molnar1-1/+1
2022-09-15locking: Add __sched to semaphore functionsNamhyung Kim1-6/+6
2022-09-15locking/rwsem: Disable preemption while trying for rwsem lockGokul krishna Krishnakumar1-2/+12
2022-08-30locking/percpu-rwsem: Add percpu_is_write_locked() and percpu_is_read_locked()Marco Elver1-0/+6
2022-08-19locking: Add __lockfunc to slow path functionsNamhyung Kim3-5/+5
2022-08-04locking/spinlocks: Mark spinlocks noinline when inline spinlocks are disabledAndi Kleen1-28/+28
2022-08-02Merge tag 'rcu.2022.07.26a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-1/+1
2022-08-01Merge tag 'locking-core-2022-08-01' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-3/+4
2022-07-30locking/rwsem: Allow slowpath writer to ignore handoff bit if not set by firs...Waiman Long1-10/+20
2022-07-05context_tracking: Take idle eqs entrypoints over RCUFrederic Weisbecker1-1/+1
2022-06-24locking/lockdep: Fix lockdep_init_map_*() confusionPeter Zijlstra1-3/+4
2022-06-13locking/lockdep: Use sched_clock() for random numbersSebastian Andrzej Siewior1-1/+1
2022-05-26Merge tag 'sysctl-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-2/+33
2022-05-11locking/qrwlock: Change "queue rwlock" to "queued rwlock"Waiman Long1-4/+4
2022-04-06kernel/lockdep: move lockdep sysctls to its own filetangmeng1-2/+33
2022-04-05locking/mutex: Make contention tracepoints more consistent wrt adaptive spinningPeter Zijlstra1-4/+12
2022-04-05locking: Apply contention tracepoints in the slow pathNamhyung Kim8-1/+63
2022-04-05locking: Add lock contention tracepointsNamhyung Kim2-1/+3
2022-04-05locking/rwsem: Always try to wake waiters in out_nolock pathWaiman Long1-10/+34
2022-04-05locking/rwsem: Conditionally wake waiters in reader/writer slowpathsWaiman Long1-36/+32
2022-04-05locking/rwsem: No need to check for handoff bit if wait queue emptyWaiman Long1-5/+4
2022-04-05lockdep: Fix -Wunused-parameter for _THIS_IP_Nick Desaulniers1-14/+8
2022-03-22Merge tag 'locking-core-2022-03-21' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds5-31/+76
2022-02-16locking/lockdep: Iterate lock_classes directly when reading lockdep filesWaiman Long3-15/+56
2022-02-11lockdep: Correct lock_classes index mappingCheng Jui Wang1-2/+2
2022-02-11locking: Add missing __sched attributesMinchan Kim2-3/+4
2022-01-25locking/lockdep: Avoid potential access of invalid memory in lock_classWaiman Long1-9/+15
2022-01-25lockdep: Use memset_startat() helper in reinit_class()Xiu Jianfeng1-4/+1
2022-01-22locking/rwlocks: introduce write_lock_nestedMinchan Kim2-0/+22
2022-01-11Merge tag 'locking_core_for_v5.17_rc1' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds7-33/+37
2022-01-11Merge tag 'rcu.2022.01.09a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-2/+2
2021-12-18Merge branch 'locking/urgent' into locking/coreThomas Gleixner1-1/+1
2021-12-18locking/rtmutex: Fix incorrect condition in rtmutex_spin_on_owner()Zqiang1-1/+1
2021-12-13Merge tag 'v5.16-rc5' into locking/core, to pick up fixesIngo Molnar1-93/+89
2021-12-07locktorture,rcutorture,torture: Always log error messageLi Zhijian1-2/+2
2021-12-04locking: Make owner_on_cpu() into <linux/sched.h>Kefeng Wang3-21/+4
2021-12-04lockdep: Remove softirq accounting on PREEMPT_RT.Thomas Gleixner1-0/+2
2021-12-04locking/rtmutex: Add rt_mutex_lock_nest_lock() and rt_mutex_lock_killable().Sebastian Andrzej Siewior1-4/+26
2021-12-04locking/rtmutex: Squash self-deadlock check for ww_rt_mutex.Peter Zijlstra1-1/+4
2021-12-04locking: Remove rt_rwlock_is_contended().Sebastian Andrzej Siewior1-6/+0
2021-11-23locking/rwsem: Optimize down_read_trylock() under highly contended caseMuchun Song1-7/+4
2021-11-23locking/rwsem: Make handoff bit handling more consistentWaiman Long1-86/+85
2021-11-17kernel/locking: Use a pointer in ww_mutex_trylock().Sebastian Andrzej Siewior1-1/+1
2021-11-09Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-3/+0
2021-11-09kallsyms: remove arch specific text and data checkKefeng Wang1-3/+0
2021-11-06Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-0/+15
2021-11-06mm: make generic arch_is_kernel_initmem_freed() do what it saysChristophe Leroy1-0/+15
2021-11-01Merge tag 'rcu.2021.11.01a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-7/+7
2021-11-01Merge tag 'objtool-core-2021-10-31' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-1/+1
2021-10-30locking: Remove spin_lock_flags() etcArnd Bergmann1-2/+1
2021-10-19locking/rwsem: Fix comments about reader optimistic lock stealing conditionsYanfei Xu1-2/+1
2021-10-19locking: Remove rcu_read_{,un}lock() for preempt_{dis,en}able()Yanfei Xu2-12/+24
2021-10-19locking/rwsem: Disable preemption for spinning regionYanfei Xu1-23/+30
2021-10-07locking/rwbase: Optimize rwbase_read_trylockDavidlohr Bueso1-3/+2
2021-10-07Merge branch 'tip/locking/urgent'Peter Zijlstra1-20/+45
2021-10-07Merge branch 'objtool/urgent'Peter Zijlstra1-20/+45
2021-10-01rtmutex: Wake up the waiters lockless while dropping the read lock.Thomas Gleixner2-7/+18
2021-10-01rtmutex: Check explicit for TASK_RTLOCK_WAIT.Sebastian Andrzej Siewior1-1/+1
2021-10-01locking/rt: Take RCU nesting into account for __might_resched()Thomas Gleixner1-3/+14
2021-10-01sched: Clean up the might_sleep() underscore zooThomas Gleixner1-3/+3
2021-10-01locking/ww-mutex: Fix uninitialized use of ret in test_aa()Nathan Chancellor1-1/+2
2021-09-17lockdep: Improve comments in wait-type checksZhouyi Zhou1-1/+1
2021-09-17lockdep: Let lock_is_held_type() detect recursive read as readSebastian Andrzej Siewior1-1/+1
2021-09-17kernel/locking: Add context to ww_mutex_trylock()Maarten Lankhorst3-21/+131
2021-09-15locking/rwbase: Take care of ordering guarantee for fastpath readerBoqun Feng1-2/+19
2021-09-15locking/rwbase: Extract __rwbase_write_trylock()Peter Zijlstra1-18/+26
2021-09-15locking/rwbase: Properly match set_and_save_state() to restore_state()Peter Zijlstra1-1/+1
2021-09-15locking/lockdep: Avoid RCU-induced noinstr failPeter Zijlstra1-1/+1
2021-09-13locktorture: Warn on individual lock_torture_init() error conditionsPaul E. McKenney1-7/+7
2021-09-09locking/rtmutex: Fix ww_mutex deadlock checkPeter Zijlstra1-1/+1
2021-09-02locking/rwsem: Add missing __init_rwsem() for PREEMPT_RTMike Galbraith1-4/+6
2021-08-30Merge tag 'locking-core-2021-08-30' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds16-1175/+2648
2021-08-30Merge branch 'core-rcu.2021.08.28a' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-12/+13
2021-08-27locking/rtmutex: Return success on deadlock for ww_mutex waitersPeter Zijlstra1-1/+14
2021-08-27locking/rtmutex: Prevent spurious EDEADLK return caused by ww_mutexesPeter Zijlstra1-0/+25
2021-08-25locking/rtmutex: Dequeue waiter on ww_mutex deadlockThomas Gleixner1-1/+6
2021-08-25locking/rtmutex: Dont dereference waiter locklessThomas Gleixner2-2/+16
2021-08-20locking/semaphore: Add might_sleep() to down_*() familyXiaoming Ni1-0/+4
2021-08-20locking/ww_mutex: Initialize waiter.ww_ctx properlySebastian Andrzej Siewior1-1/+1
2021-08-17locking/spinlock/rt: Prepare for RT local_lockThomas Gleixner1-2/+5
2021-08-17locking/rtmutex: Add adaptive spinwait mechanismSteven Rostedt1-2/+65
2021-08-17locking/rtmutex: Implement equal priority lock stealingGregory Haskins1-17/+35
2021-08-17locking/rtmutex: Prevent lockdep false positive with PI futexesThomas Gleixner1-0/+12
2021-08-17locking/rtmutex: Add mutex variant for RTThomas Gleixner2-1/+125
2021-08-17locking/ww_mutex: Implement rtmutex based ww_mutex API functionsPeter Zijlstra2-1/+77
2021-08-17locking/rtmutex: Extend the rtmutex core to support ww_mutexPeter Zijlstra4-14/+115
2021-08-17locking/ww_mutex: Add rt_mutex based lock type and accessorsPeter Zijlstra1-3/+3
2021-08-17locking/ww_mutex: Add RT priority to W/W orderPeter Zijlstra1-15/+49
2021-08-17locking/ww_mutex: Implement rt_mutex accessorsPeter Zijlstra1-0/+80
2021-08-17locking/ww_mutex: Abstract out internal lock accessesThomas Gleixner1-4/+19
2021-08-17locking/ww_mutex: Abstract out mutex typesPeter Zijlstra1-10/+13
2021-08-17locking/ww_mutex: Abstract out mutex accessorsPeter Zijlstra1-2/+14
2021-08-17locking/ww_mutex: Abstract out waiter enqueueingPeter Zijlstra1-6/+13
2021-08-17locking/ww_mutex: Abstract out the waiter iterationPeter Zijlstra1-4/+53
2021-08-17locking/ww_mutex: Remove the __sched annotation from ww_mutex APIsPeter Zijlstra1-6/+6
2021-08-17locking/ww_mutex: Split out the W/W implementation logic into kernel/locking/...Peter Zijlstra (Intel)2-371/+370
2021-08-17locking/ww_mutex: Split up ww_mutex_unlock()Peter Zijlstra (Intel)1-11/+15
2021-08-17locking/ww_mutex: Gather mutex_waiter initializationPeter Zijlstra2-9/+4
2021-08-17locking/ww_mutex: Simplify lockdep annotationsPeter Zijlstra1-9/+10
2021-08-17locking/mutex: Make mutex::wait_lock rawThomas Gleixner1-11/+11
2021-08-17locking/mutex: Move the 'struct mutex_waiter' definition from <linux/mutex.h>...Thomas Gleixner1-0/+13
2021-08-17locking/mutex: Consolidate core headers, remove kernel/locking/mutex-debug.hThomas Gleixner4-48/+26
2021-08-17locking/rtmutex: Squash !RT tasks to DEFAULT_PRIOPeter Zijlstra1-5/+20
2021-08-17locking/rwlock: Provide RT variantThomas Gleixner3-0/+143
2021-08-17locking/spinlock: Provide RT variantThomas Gleixner2-0/+130
2021-08-17locking/rtmutex: Provide the spin/rwlock core lock functionThomas Gleixner2-1/+61
2021-08-17locking/rtmutex: Guard regular sleeping locks specific functionsThomas Gleixner3-123/+133
2021-08-17locking/rtmutex: Prepare RT rt_mutex_wake_q for RT locksThomas Gleixner2-3/+20
2021-08-17locking/rtmutex: Use rt_mutex_wake_q_headThomas Gleixner3-19/+16
2021-08-17locking/rtmutex: Provide rt_wake_q_head and helpersThomas Gleixner2-0/+29
2021-08-17locking/rtmutex: Add wake_state to rt_mutex_waiterThomas Gleixner2-1/+10
2021-08-17locking/rwsem: Add rtmutex based R/W semaphore implementationThomas Gleixner1-0/+108
2021-08-17locking/rt: Add base code for RT rw_semaphore and rwlockThomas Gleixner1-0/+263
2021-08-17locking/rtmutex: Provide rt_mutex_slowlock_locked()Thomas Gleixner2-43/+59
2021-08-17locking/rtmutex: Split out the inner parts of 'struct rtmutex'Peter Zijlstra3-68/+75
2021-08-17locking/rtmutex: Split API from implementationThomas Gleixner4-498/+514
2021-08-17locking/rtmutex: Switch to from cmpxchg_*() to try_cmpxchg_*()Thomas Gleixner1-2/+2
2021-08-17locking/rtmutex: Convert macros to inlinesSebastian Andrzej Siewior1-4/+27
2021-08-17locking/rtmutex: Set proper wait context for lockdepThomas Gleixner1-1/+1