Searched refs:ww_ctx (Results 1 – 10 of 10) sorted by relevance
/Linux-v5.15/kernel/locking/ |
D | ww_mutex.h | 181 ww_mutex_lock_acquired(struct ww_mutex *ww, struct ww_acquire_ctx *ww_ctx) in ww_mutex_lock_acquired() argument 195 DEBUG_LOCKS_WARN_ON(ww_ctx->done_acquire); in ww_mutex_lock_acquired() 197 if (ww_ctx->contending_lock) { in ww_mutex_lock_acquired() 202 DEBUG_LOCKS_WARN_ON(ww_ctx->contending_lock != ww); in ww_mutex_lock_acquired() 208 DEBUG_LOCKS_WARN_ON(ww_ctx->acquired > 0); in ww_mutex_lock_acquired() 209 ww_ctx->contending_lock = NULL; in ww_mutex_lock_acquired() 215 DEBUG_LOCKS_WARN_ON(ww_ctx->ww_class != ww->ww_class); in ww_mutex_lock_acquired() 217 ww_ctx->acquired++; in ww_mutex_lock_acquired() 218 ww->ctx = ww_ctx; in ww_mutex_lock_acquired() 278 struct ww_acquire_ctx *ww_ctx) in __ww_mutex_die() argument [all …]
|
D | ww_rt_mutex.c | 13 __ww_rt_mutex_lock(struct ww_mutex *lock, struct ww_acquire_ctx *ww_ctx, in __ww_rt_mutex_lock() argument 22 if (ww_ctx) { in __ww_rt_mutex_lock() 23 if (unlikely(ww_ctx == READ_ONCE(lock->ctx))) in __ww_rt_mutex_lock() 31 if (ww_ctx->acquired == 0) in __ww_rt_mutex_lock() 32 ww_ctx->wounded = 0; in __ww_rt_mutex_lock() 35 nest_lock = &ww_ctx->dep_map; in __ww_rt_mutex_lock() 41 if (ww_ctx) in __ww_rt_mutex_lock() 42 ww_mutex_set_context_fastpath(lock, ww_ctx); in __ww_rt_mutex_lock() 46 ret = rt_mutex_slowlock(&rtm->rtmutex, ww_ctx, state); in __ww_rt_mutex_lock()
|
D | mutex.c | 298 bool ww_mutex_spin_on_owner(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, in ww_mutex_spin_on_owner() argument 316 if (ww_ctx->acquired > 0 && READ_ONCE(ww->ctx)) in ww_mutex_spin_on_owner() 347 struct ww_acquire_ctx *ww_ctx, struct mutex_waiter *waiter) in mutex_spin_on_owner() argument 370 if (ww_ctx && !ww_mutex_spin_on_owner(lock, ww_ctx, waiter)) { in mutex_spin_on_owner() 434 mutex_optimistic_spin(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, in mutex_optimistic_spin() argument 469 if (!mutex_spin_on_owner(lock, owner, ww_ctx, waiter)) in mutex_optimistic_spin() 510 mutex_optimistic_spin(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, in mutex_optimistic_spin() argument 564 struct ww_acquire_ctx *ww_ctx, const bool use_ww_ctx) in __mutex_lock_common() argument 571 ww_ctx = NULL; in __mutex_lock_common() 578 if (ww_ctx) { in __mutex_lock_common() [all …]
|
D | rtmutex.c | 35 struct ww_acquire_ctx *ww_ctx) in __ww_mutex_add_waiter() argument 41 struct ww_acquire_ctx *ww_ctx) in __ww_mutex_check_waiters() argument 46 struct ww_acquire_ctx *ww_ctx) in ww_mutex_lock_acquired() argument 52 struct ww_acquire_ctx *ww_ctx) in __ww_mutex_check_kill() argument 384 if (aw->ww_ctx) { in __waiter_less() 385 if (!bw->ww_ctx) in __waiter_less() 388 return (signed long)(aw->ww_ctx->stamp - in __waiter_less() 389 bw->ww_ctx->stamp) < 0; in __waiter_less() 681 if (IS_ENABLED(CONFIG_PREEMPT_RT) && waiter->ww_ctx && detect_deadlock) in rt_mutex_adjust_prio_chain() 756 if (IS_ENABLED(CONFIG_PREEMPT_RT) && orig_waiter && orig_waiter->ww_ctx) in rt_mutex_adjust_prio_chain() [all …]
|
D | mutex.h | 17 struct ww_acquire_ctx *ww_ctx; member
|
D | mutex-debug.c | 33 waiter->ww_ctx = MUTEX_POISON_WW_CTX; in debug_mutex_lock_common()
|
D | rtmutex_common.h | 41 struct ww_acquire_ctx *ww_ctx; member
|
/Linux-v5.15/drivers/gpu/drm/ |
D | drm_modeset_lock.c | 121 ww_acquire_done(&ctx->ww_ctx); in drm_modeset_lock_all() 202 ww_acquire_init(&ctx->ww_ctx, &crtc_ww_class); in drm_modeset_acquire_init() 216 ww_acquire_fini(&ctx->ww_ctx); in drm_modeset_acquire_fini() 249 lockdep_assert_held(&ctx->ww_ctx); in modeset_lock() 256 ret = ww_mutex_lock_slow_interruptible(&lock->mutex, &ctx->ww_ctx); in modeset_lock() 258 ret = ww_mutex_lock_interruptible(&lock->mutex, &ctx->ww_ctx); in modeset_lock() 260 ww_mutex_lock_slow(&lock->mutex, &ctx->ww_ctx); in modeset_lock() 263 ret = ww_mutex_lock(&lock->mutex, &ctx->ww_ctx); in modeset_lock()
|
/Linux-v5.15/drivers/regulator/ |
D | core.c | 141 struct ww_acquire_ctx *ww_ctx) in regulator_lock_nested() argument 148 if (ww_ctx || !ww_mutex_trylock(&rdev->mutex)) { in regulator_lock_nested() 156 ret = ww_mutex_lock(&rdev->mutex, ww_ctx); in regulator_lock_nested() 251 struct ww_acquire_ctx *ww_ctx) in regulator_lock_recursive() argument 263 err = regulator_lock_nested(c_rdev, ww_ctx); in regulator_lock_recursive() 281 ww_ctx); in regulator_lock_recursive() 306 struct ww_acquire_ctx *ww_ctx) in regulator_unlock_dependent() argument 309 ww_acquire_fini(ww_ctx); in regulator_unlock_dependent() 321 struct ww_acquire_ctx *ww_ctx) in regulator_lock_dependent() argument 329 ww_acquire_init(ww_ctx, ®ulator_ww_class); in regulator_lock_dependent() [all …]
|
/Linux-v5.15/include/drm/ |
D | drm_modeset_lock.h | 45 struct ww_acquire_ctx ww_ctx; member
|