Searched refs:ww_mutex (Results 1 – 12 of 12) sorted by relevance
/Linux-v4.19/include/linux/ |
D | ww_mutex.h | 40 struct ww_mutex *contending_lock; 51 struct ww_mutex { struct 83 struct ww_mutex mutexname = __WW_MUTEX_INITIALIZER(mutexname, ww_class) 95 static inline void ww_mutex_init(struct ww_mutex *lock, in ww_mutex_init() 230 extern int /* __must_check */ ww_mutex_lock(struct ww_mutex *lock, struct ww_acquire_ctx *ctx); 262 extern int __must_check ww_mutex_lock_interruptible(struct ww_mutex *lock, 289 ww_mutex_lock_slow(struct ww_mutex *lock, struct ww_acquire_ctx *ctx) in ww_mutex_lock_slow() 325 ww_mutex_lock_slow_interruptible(struct ww_mutex *lock, in ww_mutex_lock_slow_interruptible() 334 extern void ww_mutex_unlock(struct ww_mutex *lock); 343 static inline int __must_check ww_mutex_trylock(struct ww_mutex *lock) in ww_mutex_trylock() [all …]
|
D | reservation.h | 74 struct ww_mutex lock;
|
/Linux-v4.19/tools/testing/selftests/locking/ |
D | ww_mutex.sh | 8 if ! /sbin/modprobe -q -n test-ww_mutex; then 13 if /sbin/modprobe -q test-ww_mutex; then 14 /sbin/modprobe -q -r test-ww_mutex
|
D | Makefile | 8 TEST_PROGS := ww_mutex.sh
|
/Linux-v4.19/kernel/locking/ |
D | mutex.c | 279 ww_mutex_lock_acquired(struct ww_mutex *ww, struct ww_acquire_ctx *ww_ctx) in ww_mutex_lock_acquired() 438 ww_mutex_set_context_fastpath(struct ww_mutex *lock, struct ww_acquire_ctx *ctx) in ww_mutex_set_context_fastpath() 478 struct ww_mutex *ww; in ww_mutex_spin_on_owner() 480 ww = container_of(lock, struct ww_mutex, base); in ww_mutex_spin_on_owner() 728 void __sched ww_mutex_unlock(struct ww_mutex *lock) in ww_mutex_unlock() 753 struct ww_mutex *ww; in __ww_mutex_kill() 755 ww = container_of(lock, struct ww_mutex, base); in __ww_mutex_kill() 781 struct ww_mutex *ww = container_of(lock, struct ww_mutex, base); in __ww_mutex_check_kill() 881 struct ww_mutex *ww = container_of(lock, struct ww_mutex, base); in __ww_mutex_add_waiter() 905 struct ww_mutex *ww; in __mutex_lock_common() [all …]
|
D | test-ww_mutex.c | 34 struct ww_mutex mutex; 127 struct ww_mutex mutex; in test_aa() 162 struct ww_mutex a_mutex; 163 struct ww_mutex b_mutex; 252 struct ww_mutex a_mutex; 253 struct ww_mutex *b_mutex; 357 struct ww_mutex *locks; 395 struct ww_mutex *locks = stress->locks; in stress_inorder_work() 447 struct ww_mutex *lock; 514 struct ww_mutex *lock = stress->locks + (get_random_int() % nlocks); in stress_one_work() [all …]
|
D | Makefile | 32 obj-$(CONFIG_WW_MUTEX_SELFTEST) += test-ww_mutex.o
|
D | locktorture.c | 384 struct ww_mutex *lock; in torture_ww_mutex_lock()
|
/Linux-v4.19/include/drm/ |
D | drm_modeset_lock.h | 80 struct ww_mutex mutex;
|
/Linux-v4.19/Documentation/locking/ |
D | ww-mutex-design.txt | 123 struct ww_mutex lock; 234 e.g. when adjusting edges in a graph where each node has its own ww_mutex lock, 266 struct ww_mutex ww_mutex; 280 ww_mutex_unlock(entry->ww_mutex) 296 ret = ww_mutex_lock(obj->ww_mutex, ctx); 332 ww_mutex currently encapsulates a struct mutex, this means no extra overhead for
|
/Linux-v4.19/lib/ |
D | locking-selftest.c | 54 static struct ww_mutex o, o2, o3;
|
D | Kconfig.debug | 1237 on the struct ww_mutex locking API.
|