Home
last modified time | relevance | path

Searched refs:ww_mutex (Results 1 – 12 of 12) sorted by relevance

/Linux-v4.19/include/linux/
Dww_mutex.h40 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 …]
Dreservation.h74 struct ww_mutex lock;
/Linux-v4.19/tools/testing/selftests/locking/
Dww_mutex.sh8 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
DMakefile8 TEST_PROGS := ww_mutex.sh
/Linux-v4.19/kernel/locking/
Dmutex.c279 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 …]
Dtest-ww_mutex.c34 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 …]
DMakefile32 obj-$(CONFIG_WW_MUTEX_SELFTEST) += test-ww_mutex.o
Dlocktorture.c384 struct ww_mutex *lock; in torture_ww_mutex_lock()
/Linux-v4.19/include/drm/
Ddrm_modeset_lock.h80 struct ww_mutex mutex;
/Linux-v4.19/Documentation/locking/
Dww-mutex-design.txt123 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/
Dlocking-selftest.c54 static struct ww_mutex o, o2, o3;
DKconfig.debug1237 on the struct ww_mutex locking API.