ww_ctx 121 drivers/gpu/drm/drm_modeset_lock.c ww_acquire_done(&ctx->ww_ctx); ww_ctx 202 drivers/gpu/drm/drm_modeset_lock.c ww_acquire_init(&ctx->ww_ctx, &crtc_ww_class); ww_ctx 216 drivers/gpu/drm/drm_modeset_lock.c ww_acquire_fini(&ctx->ww_ctx); ww_ctx 249 drivers/gpu/drm/drm_modeset_lock.c lockdep_assert_held(&ctx->ww_ctx); ww_ctx 256 drivers/gpu/drm/drm_modeset_lock.c ret = ww_mutex_lock_slow_interruptible(&lock->mutex, &ctx->ww_ctx); ww_ctx 258 drivers/gpu/drm/drm_modeset_lock.c ret = ww_mutex_lock_interruptible(&lock->mutex, &ctx->ww_ctx); ww_ctx 260 drivers/gpu/drm/drm_modeset_lock.c ww_mutex_lock_slow(&lock->mutex, &ctx->ww_ctx); ww_ctx 263 drivers/gpu/drm/drm_modeset_lock.c ret = ww_mutex_lock(&lock->mutex, &ctx->ww_ctx); ww_ctx 150 drivers/regulator/core.c struct ww_acquire_ctx *ww_ctx) ww_ctx 157 drivers/regulator/core.c if (ww_ctx || !ww_mutex_trylock(&rdev->mutex)) { ww_ctx 165 drivers/regulator/core.c ret = ww_mutex_lock(&rdev->mutex, ww_ctx); ww_ctx 259 drivers/regulator/core.c struct ww_acquire_ctx *ww_ctx) ww_ctx 271 drivers/regulator/core.c err = regulator_lock_nested(c_rdev, ww_ctx); ww_ctx 289 drivers/regulator/core.c ww_ctx); ww_ctx 314 drivers/regulator/core.c struct ww_acquire_ctx *ww_ctx) ww_ctx 317 drivers/regulator/core.c ww_acquire_fini(ww_ctx); ww_ctx 329 drivers/regulator/core.c struct ww_acquire_ctx *ww_ctx) ww_ctx 337 drivers/regulator/core.c ww_acquire_init(ww_ctx, ®ulator_ww_class); ww_ctx 341 drivers/regulator/core.c ww_mutex_lock_slow(&new_contended_rdev->mutex, ww_ctx); ww_ctx 349 drivers/regulator/core.c ww_ctx); ww_ctx 356 drivers/regulator/core.c ww_acquire_done(ww_ctx); ww_ctx 2547 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 2550 drivers/regulator/core.c regulator_lock_dependent(rdev, &ww_ctx); ww_ctx 2552 drivers/regulator/core.c regulator_unlock_dependent(rdev, &ww_ctx); ww_ctx 2657 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 2660 drivers/regulator/core.c regulator_lock_dependent(rdev, &ww_ctx); ww_ctx 2662 drivers/regulator/core.c regulator_unlock_dependent(rdev, &ww_ctx); ww_ctx 2706 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 2709 drivers/regulator/core.c regulator_lock_dependent(rdev, &ww_ctx); ww_ctx 2724 drivers/regulator/core.c regulator_unlock_dependent(rdev, &ww_ctx); ww_ctx 2734 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 2739 drivers/regulator/core.c regulator_lock_dependent(rdev, &ww_ctx); ww_ctx 2769 drivers/regulator/core.c regulator_unlock_dependent(rdev, &ww_ctx); ww_ctx 3760 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 3763 drivers/regulator/core.c regulator_lock_dependent(regulator->rdev, &ww_ctx); ww_ctx 3768 drivers/regulator/core.c regulator_unlock_dependent(regulator->rdev, &ww_ctx); ww_ctx 3840 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 3847 drivers/regulator/core.c regulator_lock_dependent(regulator->rdev, &ww_ctx); ww_ctx 3852 drivers/regulator/core.c regulator_unlock_dependent(regulator->rdev, &ww_ctx); ww_ctx 4043 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 4046 drivers/regulator/core.c regulator_lock_dependent(regulator->rdev, &ww_ctx); ww_ctx 4048 drivers/regulator/core.c regulator_unlock_dependent(regulator->rdev, &ww_ctx); ww_ctx 5516 drivers/regulator/core.c struct ww_acquire_ctx *ww_ctx; ww_ctx 5528 drivers/regulator/core.c ret = regulator_lock_nested(rdev, lock_data->ww_ctx); ww_ctx 5556 drivers/regulator/core.c static int regulator_summary_lock_all(struct ww_acquire_ctx *ww_ctx, ww_ctx 5563 drivers/regulator/core.c lock_data.ww_ctx = ww_ctx; ww_ctx 5576 drivers/regulator/core.c static void regulator_summary_lock(struct ww_acquire_ctx *ww_ctx) ww_ctx 5584 drivers/regulator/core.c ww_acquire_init(ww_ctx, ®ulator_ww_class); ww_ctx 5588 drivers/regulator/core.c ww_mutex_lock_slow(&new_contended_rdev->mutex, ww_ctx); ww_ctx 5593 drivers/regulator/core.c err = regulator_summary_lock_all(ww_ctx, ww_ctx 5602 drivers/regulator/core.c ww_acquire_done(ww_ctx); ww_ctx 5605 drivers/regulator/core.c static void regulator_summary_unlock(struct ww_acquire_ctx *ww_ctx) ww_ctx 5609 drivers/regulator/core.c ww_acquire_fini(ww_ctx); ww_ctx 5627 drivers/regulator/core.c struct ww_acquire_ctx ww_ctx; ww_ctx 5632 drivers/regulator/core.c regulator_summary_lock(&ww_ctx); ww_ctx 5637 drivers/regulator/core.c regulator_summary_unlock(&ww_ctx); ww_ctx 45 include/drm/drm_modeset_lock.h struct ww_acquire_ctx ww_ctx; ww_ctx 75 include/linux/mutex.h struct ww_acquire_ctx *ww_ctx; ww_ctx 306 kernel/locking/mutex.c ww_mutex_lock_acquired(struct ww_mutex *ww, struct ww_acquire_ctx *ww_ctx) ww_ctx 320 kernel/locking/mutex.c DEBUG_LOCKS_WARN_ON(ww_ctx->done_acquire); ww_ctx 322 kernel/locking/mutex.c if (ww_ctx->contending_lock) { ww_ctx 327 kernel/locking/mutex.c DEBUG_LOCKS_WARN_ON(ww_ctx->contending_lock != ww); ww_ctx 333 kernel/locking/mutex.c DEBUG_LOCKS_WARN_ON(ww_ctx->acquired > 0); ww_ctx 334 kernel/locking/mutex.c ww_ctx->contending_lock = NULL; ww_ctx 340 kernel/locking/mutex.c DEBUG_LOCKS_WARN_ON(ww_ctx->ww_class != ww->ww_class); ww_ctx 342 kernel/locking/mutex.c ww_ctx->acquired++; ww_ctx 343 kernel/locking/mutex.c ww->ctx = ww_ctx; ww_ctx 368 kernel/locking/mutex.c struct ww_acquire_ctx *ww_ctx) ww_ctx 370 kernel/locking/mutex.c if (!ww_ctx->is_wait_die) ww_ctx 373 kernel/locking/mutex.c if (waiter->ww_ctx->acquired > 0 && ww_ctx 374 kernel/locking/mutex.c __ww_ctx_stamp_after(waiter->ww_ctx, ww_ctx)) { ww_ctx 390 kernel/locking/mutex.c struct ww_acquire_ctx *ww_ctx, ww_ctx 413 kernel/locking/mutex.c if (ww_ctx->acquired > 0 && __ww_ctx_stamp_after(hold_ctx, ww_ctx)) { ww_ctx 444 kernel/locking/mutex.c __ww_mutex_check_waiters(struct mutex *lock, struct ww_acquire_ctx *ww_ctx) ww_ctx 451 kernel/locking/mutex.c if (!cur->ww_ctx) ww_ctx 454 kernel/locking/mutex.c if (__ww_mutex_die(lock, cur, ww_ctx) || ww_ctx 455 kernel/locking/mutex.c __ww_mutex_wound(lock, cur->ww_ctx, ww_ctx)) ww_ctx 502 kernel/locking/mutex.c bool ww_mutex_spin_on_owner(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, ww_ctx 520 kernel/locking/mutex.c if (ww_ctx->acquired > 0 && READ_ONCE(ww->ctx)) ww_ctx 551 kernel/locking/mutex.c struct ww_acquire_ctx *ww_ctx, struct mutex_waiter *waiter) ww_ctx 574 kernel/locking/mutex.c if (ww_ctx && !ww_mutex_spin_on_owner(lock, ww_ctx, waiter)) { ww_ctx 638 kernel/locking/mutex.c mutex_optimistic_spin(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, ww_ctx 673 kernel/locking/mutex.c if (!mutex_spin_on_owner(lock, owner, ww_ctx, waiter)) ww_ctx 714 kernel/locking/mutex.c mutex_optimistic_spin(struct mutex *lock, struct ww_acquire_ctx *ww_ctx, ww_ctx 776 kernel/locking/mutex.c __ww_mutex_kill(struct mutex *lock, struct ww_acquire_ctx *ww_ctx) ww_ctx 778 kernel/locking/mutex.c if (ww_ctx->acquired > 0) { ww_ctx 783 kernel/locking/mutex.c DEBUG_LOCKS_WARN_ON(ww_ctx->contending_lock); ww_ctx 784 kernel/locking/mutex.c ww_ctx->contending_lock = ww; ww_ctx 831 kernel/locking/mutex.c if (!cur->ww_ctx) ww_ctx 854 kernel/locking/mutex.c struct ww_acquire_ctx *ww_ctx) ww_ctx 860 kernel/locking/mutex.c if (!ww_ctx) { ww_ctx 865 kernel/locking/mutex.c is_wait_die = ww_ctx->is_wait_die; ww_ctx 876 kernel/locking/mutex.c if (!cur->ww_ctx) ww_ctx 879 kernel/locking/mutex.c if (__ww_ctx_stamp_after(ww_ctx, cur->ww_ctx)) { ww_ctx 886 kernel/locking/mutex.c int ret = __ww_mutex_kill(lock, ww_ctx); ww_ctx 898 kernel/locking/mutex.c __ww_mutex_die(lock, cur, ww_ctx); ww_ctx 916 kernel/locking/mutex.c __ww_mutex_wound(lock, ww_ctx, ww->ctx); ww_ctx 928 kernel/locking/mutex.c struct ww_acquire_ctx *ww_ctx, const bool use_ww_ctx) ww_ctx 942 kernel/locking/mutex.c if (use_ww_ctx && ww_ctx) { ww_ctx 943 kernel/locking/mutex.c if (unlikely(ww_ctx == READ_ONCE(ww->ctx))) ww_ctx 951 kernel/locking/mutex.c if (ww_ctx->acquired == 0) ww_ctx 952 kernel/locking/mutex.c ww_ctx->wounded = 0; ww_ctx 959 kernel/locking/mutex.c mutex_optimistic_spin(lock, ww_ctx, use_ww_ctx, NULL)) { ww_ctx 962 kernel/locking/mutex.c if (use_ww_ctx && ww_ctx) ww_ctx 963 kernel/locking/mutex.c ww_mutex_set_context_fastpath(ww, ww_ctx); ww_ctx 973 kernel/locking/mutex.c if (use_ww_ctx && ww_ctx) ww_ctx 974 kernel/locking/mutex.c __ww_mutex_check_waiters(lock, ww_ctx); ww_ctx 989 kernel/locking/mutex.c waiter.ww_ctx = MUTEX_POISON_WW_CTX; ww_ctx 996 kernel/locking/mutex.c ret = __ww_mutex_add_waiter(&waiter, lock, ww_ctx); ww_ctx 1000 kernel/locking/mutex.c waiter.ww_ctx = ww_ctx; ww_ctx 1026 kernel/locking/mutex.c if (use_ww_ctx && ww_ctx) { ww_ctx 1027 kernel/locking/mutex.c ret = __ww_mutex_check_kill(lock, &waiter, ww_ctx); ww_ctx 1039 kernel/locking/mutex.c if ((use_ww_ctx && ww_ctx) || !first) { ww_ctx 1052 kernel/locking/mutex.c (first && mutex_optimistic_spin(lock, ww_ctx, use_ww_ctx, &waiter))) ww_ctx 1061 kernel/locking/mutex.c if (use_ww_ctx && ww_ctx) { ww_ctx 1066 kernel/locking/mutex.c if (!ww_ctx->is_wait_die && ww_ctx 1068 kernel/locking/mutex.c __ww_mutex_check_waiters(lock, ww_ctx); ww_ctx 1081 kernel/locking/mutex.c if (use_ww_ctx && ww_ctx) ww_ctx 1082 kernel/locking/mutex.c ww_mutex_lock_acquired(ww, ww_ctx); ww_ctx 1109 kernel/locking/mutex.c struct ww_acquire_ctx *ww_ctx) ww_ctx 1111 kernel/locking/mutex.c return __mutex_lock_common(lock, state, subclass, nest_lock, ip, ww_ctx, true);