android_kernel_msm-6.1_noth.../kernel/locking
xieliujie 260bfad693 ANDROID: vendor_hook: Add hooks to support reader optimistic spin in rwsem
Since upstream commit 617f3ef951 ("locking/rwsem: Remove
reader optimistic spinning"), vendors have seen increased
contention and blocking on rwsems.

There are attempts to actively fix this upstream:
  https://lore.kernel.org/lkml/20240406081126.8030-1-bongkyu7.kim@samsung.com/

But in the meantime, provide vendorhooks so that vendors can
implement their own optimistic spin routine. In doing so,
vendors see improvements in cold launch times on important apps.

Bug: 331742151
Change-Id: I7466413de9ee1293e86f73880931235d7a9142ac
Signed-off-by: xieliujie <xieliujie@oppo.com>
[jstultz: Rewrote commit message]
Signed-off-by: John Stultz <jstultz@google.com>
2024-04-24 10:30:39 +08:00
..
irqflag-debug.c
lock_events.c
lock_events.h
lock_events_list.h
lockdep.c lockdep: Fix block chain corruption 2023-12-03 07:32:09 +01:00
lockdep_internals.h locking/lockdep: Iterate lock_classes directly when reading lockdep files 2022-02-16 15:57:58 +01:00
lockdep_proc.c locking/lockdep: Iterate lock_classes directly when reading lockdep files 2022-02-16 15:57:58 +01:00
lockdep_states.h
locktorture.c locktorture,rcutorture,torture: Always log error message 2021-12-07 16:36:17 -08:00
Makefile kmsan: disable instrumentation of unsupported common kernel code 2022-10-03 14:03:20 -07:00
mcs_spinlock.h locking: Fix typos in comments 2021-03-22 02:45:52 +01:00
mutex-debug.c locking/ww_mutex: Gather mutex_waiter initialization 2021-08-17 19:04:41 +02:00
mutex.c ANDROID: vendor_hook: fix the error record position of mutex 2023-08-11 16:57:28 +00:00
mutex.h locking/mutex: Move the 'struct mutex_waiter' definition from <linux/mutex.h> to the internal header 2021-08-17 18:24:31 +02:00
osq_lock.c ANDROID: vendor_hook: Add hooks to support reader optimistic spin in rwsem 2024-04-24 10:30:39 +08:00
percpu-rwsem.c ANDROID: vendor_hooks: Add hooks for oem percpu-rwsem optimaton 2023-09-22 17:33:39 +00:00
qrwlock.c locking: Add __lockfunc to slow path functions 2022-08-19 19:47:51 +02:00
qspinlock.c locking: Add __lockfunc to slow path functions 2022-08-19 19:47:51 +02:00
qspinlock_paravirt.h locking: Add __lockfunc to slow path functions 2022-08-19 19:47:51 +02:00
qspinlock_stat.h
rtmutex.c ANDROID: vendor_hooks: Add hooks for rt_mutex steal 2023-12-25 15:22:46 +08:00
rtmutex_api.c Revert "locking/rtmutex: Fix task->pi_waiters integrity" 2023-09-12 14:37:42 +00:00
rtmutex_common.h Revert "locking/rtmutex: Fix task->pi_waiters integrity" 2023-09-12 14:37:42 +00:00
rwbase_rt.c locking: Apply contention tracepoints in the slow path 2022-04-05 10:24:35 +02:00
rwsem.c ANDROID: vendor_hook: Add hooks to support reader optimistic spin in rwsem 2024-04-24 10:30:39 +08:00
semaphore.c locking: Add __sched to semaphore functions 2022-09-15 16:14:03 +02:00
spinlock.c locking/spinlocks: Mark spinlocks noinline when inline spinlocks are disabled 2022-08-04 11:05:43 +02:00
spinlock_debug.c locking/rwlock: Provide RT variant 2021-08-17 17:50:51 +02:00
spinlock_rt.c locking/rwlocks: introduce write_lock_nested 2022-01-22 08:33:37 +02:00
test-ww_mutex.c locking/ww_mutex/test: Fix potential workqueue corruption 2023-11-28 17:06:54 +00:00
ww_mutex.h Revert "locking/rtmutex: Fix task->pi_waiters integrity" 2023-09-12 14:37:42 +00:00
ww_rt_mutex.c kernel/locking: Use a pointer in ww_mutex_trylock(). 2021-11-17 14:48:49 +01:00