Home
last modified time | relevance | path

Searched refs:ww_ctx (Results 1 – 5 of 5) sorted by relevance

/linux/kernel/locking/
H A Dww_mutex.h216 ww_mutex_lock_acquired(struct ww_mutex *ww, struct ww_acquire_ctx *ww_ctx) in ww_mutex_lock_acquired() argument
230 DEBUG_LOCKS_WARN_ON(ww_ctx->done_acquire); in ww_mutex_lock_acquired()
232 if (ww_ctx->contending_lock) { in ww_mutex_lock_acquired()
237 DEBUG_LOCKS_WARN_ON(ww_ctx->contending_lock != ww); in ww_mutex_lock_acquired()
243 DEBUG_LOCKS_WARN_ON(ww_ctx->acquired > 0); in ww_mutex_lock_acquired()
244 ww_ctx->contending_lock = NULL; in ww_mutex_lock_acquired()
250 DEBUG_LOCKS_WARN_ON(ww_ctx->ww_class != ww->ww_class); in ww_mutex_lock_acquired()
252 ww_ctx->acquired++; in ww_mutex_lock_acquired()
253 ww->ctx = ww_ctx; in ww_mutex_lock_acquired()
313 struct ww_acquire_ctx *ww_ctx, struct wake_q_head *wake_q) in __ww_mutex_die() argument
[all …]
H A Dmutex.c337 bool ww_mutex_spin_on_owner(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, in ww_mutex_spin_on_owner() argument
355 if (ww_ctx->acquired > 0 && READ_ONCE(ww->ctx)) in ww_mutex_spin_on_owner()
386 struct ww_acquire_ctx *ww_ctx, struct mutex_waiter *waiter) in mutex_spin_on_owner() argument
411 if (ww_ctx && !ww_mutex_spin_on_owner(lock, ww_ctx, waiter)) { in mutex_spin_on_owner()
474 mutex_optimistic_spin(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, in mutex_optimistic_spin() argument
509 if (!mutex_spin_on_owner(lock, owner, ww_ctx, waiter)) in mutex_optimistic_spin()
550 mutex_optimistic_spin(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, in mutex_optimistic_spin() argument
611 struct ww_acquire_ctx *ww_ctx, const bool use_ww_ctx) in __mutex_lock_common() argument
621 ww_ctx = NULL; in __mutex_lock_common()
628 if (ww_ctx) { in __mutex_lock_common()
[all …]
H A Drtmutex.c38 struct ww_acquire_ctx *ww_ctx, in __ww_mutex_add_waiter() argument
45 struct ww_acquire_ctx *ww_ctx, in __ww_mutex_check_waiters() argument
51 struct ww_acquire_ctx *ww_ctx) in ww_mutex_lock_acquired() argument
57 struct ww_acquire_ctx *ww_ctx) in __ww_mutex_check_kill() argument
474 if (aw->ww_ctx) { in __waiter_less()
475 if (!bw->ww_ctx) in __waiter_less()
478 return (signed long)(aw->ww_ctx->stamp - in __waiter_less()
479 bw->ww_ctx->stamp) < 0; in __waiter_less()
798 if (IS_ENABLED(CONFIG_PREEMPT_RT) && waiter->ww_ctx && detect_deadlock) in rt_mutex_adjust_prio_chain()
878 if (IS_ENABLED(CONFIG_PREEMPT_RT) && orig_waiter && orig_waiter->ww_ctx) in rt_mutex_adjust_prio_chain()
[all …]
/linux/drivers/gpu/drm/
H A Ddrm_modeset_lock.c171 ww_acquire_done(&ctx->ww_ctx); in drm_modeset_lock_all()
252 ww_acquire_init(&ctx->ww_ctx, &crtc_ww_class); in drm_modeset_acquire_init()
266 ww_acquire_fini(&ctx->ww_ctx); in drm_modeset_acquire_fini()
302 lockdep_assert_held(&ctx->ww_ctx); in modeset_lock()
309 ret = ww_mutex_lock_slow_interruptible(&lock->mutex, &ctx->ww_ctx); in modeset_lock()
311 ret = ww_mutex_lock_interruptible(&lock->mutex, &ctx->ww_ctx); in modeset_lock()
313 ww_mutex_lock_slow(&lock->mutex, &ctx->ww_ctx); in modeset_lock()
316 ret = ww_mutex_lock(&lock->mutex, &ctx->ww_ctx); in modeset_lock()
/linux/include/drm/
H A Ddrm_modeset_lock.h48 struct ww_acquire_ctx ww_ctx; member