Home
last modified time | relevance | path

Searched refs:mutex (Results 1 – 25 of 43) sorted by relevance

12

/kernel/locking/
Dmutex.c49 __mutex_init(struct mutex *lock, const char *name, struct lock_class_key *key) in __mutex_init()
83 static inline struct task_struct *__mutex_owner(struct mutex *lock) in __mutex_owner()
93 bool mutex_is_locked(struct mutex *lock) in mutex_is_locked()
107 static inline struct task_struct *__mutex_trylock_common(struct mutex *lock, bool handoff) in __mutex_trylock_common()
146 static inline bool __mutex_trylock_or_handoff(struct mutex *lock, bool handoff) in __mutex_trylock_or_handoff()
154 static inline bool __mutex_trylock(struct mutex *lock) in __mutex_trylock()
170 static __always_inline bool __mutex_trylock_fast(struct mutex *lock) in __mutex_trylock_fast()
183 static __always_inline bool __mutex_unlock_fast(struct mutex *lock) in __mutex_unlock_fast()
191 static inline void __mutex_set_flag(struct mutex *lock, unsigned long flag) in __mutex_set_flag()
196 static inline void __mutex_clear_flag(struct mutex *lock, unsigned long flag) in __mutex_clear_flag()
[all …]
Drtmutex_api.c499 void __mutex_rt_init(struct mutex *mutex, const char *name, in __mutex_rt_init() argument
502 debug_check_no_locks_freed((void *)mutex, sizeof(*mutex)); in __mutex_rt_init()
503 lockdep_init_map_wait(&mutex->dep_map, name, key, 0, LD_WAIT_SLEEP); in __mutex_rt_init()
507 static __always_inline int __mutex_lock_common(struct mutex *lock, in __mutex_lock_common()
526 void __sched mutex_lock_nested(struct mutex *lock, unsigned int subclass) in mutex_lock_nested()
532 void __sched _mutex_lock_nest_lock(struct mutex *lock, in _mutex_lock_nest_lock()
539 int __sched mutex_lock_interruptible_nested(struct mutex *lock, in mutex_lock_interruptible_nested()
546 int __sched mutex_lock_killable_nested(struct mutex *lock, in mutex_lock_killable_nested()
553 void __sched mutex_lock_io_nested(struct mutex *lock, unsigned int subclass) in mutex_lock_io_nested()
567 void __sched mutex_lock(struct mutex *lock) in mutex_lock()
[all …]
Dmutex.h24 extern void debug_mutex_lock_common(struct mutex *lock,
26 extern void debug_mutex_wake_waiter(struct mutex *lock,
29 extern void debug_mutex_add_waiter(struct mutex *lock,
32 extern void debug_mutex_remove_waiter(struct mutex *lock, struct mutex_waiter *waiter,
34 extern void debug_mutex_unlock(struct mutex *lock);
35 extern void debug_mutex_init(struct mutex *lock, const char *name,
Dmutex-debug.c28 void debug_mutex_lock_common(struct mutex *lock, struct mutex_waiter *waiter) in debug_mutex_lock_common()
36 void debug_mutex_wake_waiter(struct mutex *lock, struct mutex_waiter *waiter) in debug_mutex_wake_waiter()
50 void debug_mutex_add_waiter(struct mutex *lock, struct mutex_waiter *waiter, in debug_mutex_add_waiter()
59 void debug_mutex_remove_waiter(struct mutex *lock, struct mutex_waiter *waiter, in debug_mutex_remove_waiter()
71 void debug_mutex_unlock(struct mutex *lock) in debug_mutex_unlock()
79 void debug_mutex_init(struct mutex *lock, const char *name, in debug_mutex_init()
100 void mutex_destroy(struct mutex *lock) in mutex_destroy()
Dtest-ww_mutex.c30 struct ww_mutex mutex; member
48 while (!ww_mutex_trylock(&mtx->mutex, NULL)) in test_mutex_work()
51 ww_mutex_lock(&mtx->mutex, NULL); in test_mutex_work()
54 ww_mutex_unlock(&mtx->mutex); in test_mutex_work()
64 ww_mutex_init(&mtx.mutex, &ww_class); in __test_mutex()
76 ww_mutex_lock(&mtx.mutex, (flags & TEST_MTX_CTX) ? &ctx : NULL); in __test_mutex()
92 ww_mutex_unlock(&mtx.mutex); in __test_mutex()
123 struct ww_mutex mutex; in test_aa() local
128 ww_mutex_init(&mutex, &ww_class); in test_aa()
132 ret = ww_mutex_lock(&mutex, &ctx); in test_aa()
[all …]
Dww_mutex.h5 #define MUTEX mutex
9 __ww_waiter_first(struct mutex *lock) in __ww_waiter_first()
21 __ww_waiter_next(struct mutex *lock, struct mutex_waiter *w) in __ww_waiter_next()
31 __ww_waiter_prev(struct mutex *lock, struct mutex_waiter *w) in __ww_waiter_prev()
41 __ww_waiter_last(struct mutex *lock) in __ww_waiter_last()
53 __ww_waiter_add(struct mutex *lock, struct mutex_waiter *waiter, struct mutex_waiter *pos) in __ww_waiter_add()
62 __ww_mutex_owner(struct mutex *lock) in __ww_mutex_owner()
68 __ww_mutex_has_waiters(struct mutex *lock) in __ww_mutex_has_waiters()
73 static inline void lock_wait_lock(struct mutex *lock) in lock_wait_lock()
78 static inline void unlock_wait_lock(struct mutex *lock) in unlock_wait_lock()
[all …]
DMakefile6 obj-y += mutex.o semaphore.o rwsem.o percpu-rwsem.o
19 obj-$(CONFIG_DEBUG_MUTEXES) += mutex-debug.o
/kernel/bpf/
Dtrampoline.c45 lockdep_assert_held_once(&tr->mutex); in bpf_tramp_ftrace_ops_func()
76 if (!mutex_trylock(&tr->mutex)) { in bpf_tramp_ftrace_ops_func()
103 mutex_unlock(&tr->mutex); in bpf_tramp_ftrace_ops_func()
167 mutex_init(&tr->mutex); in bpf_trampoline_lookup()
596 mutex_lock(&tr->mutex); in bpf_trampoline_link_prog()
598 mutex_unlock(&tr->mutex); in bpf_trampoline_link_prog()
625 mutex_lock(&tr->mutex); in bpf_trampoline_unlink_prog()
627 mutex_unlock(&tr->mutex); in bpf_trampoline_unlink_prog()
735 mutex_lock(&tr->mutex); in bpf_trampoline_link_cgroup_shim()
742 mutex_unlock(&tr->mutex); in bpf_trampoline_link_cgroup_shim()
[all …]
Ddispatcher.c141 mutex_lock(&d->mutex); in bpf_dispatcher_change_prog()
167 mutex_unlock(&d->mutex); in bpf_dispatcher_change_prog()
/kernel/
Dworkqueue.c265 struct mutex mutex; /* protects this wq */ member
398 !lockdep_is_held(&wq->mutex) && \
453 lockdep_is_held(&(wq->mutex)))
2822 mutex_lock(&wq->mutex); in __flush_workqueue()
2869 mutex_unlock(&wq->mutex); in __flush_workqueue()
2882 mutex_lock(&wq->mutex); in __flush_workqueue()
2954 mutex_unlock(&wq->mutex); in __flush_workqueue()
2979 mutex_lock(&wq->mutex); in drain_workqueue()
2982 mutex_unlock(&wq->mutex); in drain_workqueue()
2986 mutex_lock(&wq->mutex); in drain_workqueue()
[all …]
Dnotifier.c488 mutex_lock(&nh->mutex); in srcu_notifier_chain_register()
490 mutex_unlock(&nh->mutex); in srcu_notifier_chain_register()
518 mutex_lock(&nh->mutex); in srcu_notifier_chain_unregister()
520 mutex_unlock(&nh->mutex); in srcu_notifier_chain_unregister()
569 mutex_init(&nh->mutex); in srcu_init_notifier_head()
Dkprobes.c130 .mutex = __MUTEX_INITIALIZER(kprobe_insn_slots.mutex),
150 mutex_lock(&c->mutex); in __get_insn_slot()
200 mutex_unlock(&c->mutex); in __get_insn_slot()
262 mutex_lock(&c->mutex); in __free_insn_slot()
288 mutex_unlock(&c->mutex); in __free_insn_slot()
348 .mutex = __MUTEX_INITIALIZER(kprobe_optinsn_slots.mutex),
/kernel/events/
Dhw_breakpoint.c108 static inline struct mutex *get_task_bps_mutex(struct perf_event *bp) in get_task_bps_mutex()
115 static struct mutex *bp_constraints_lock(struct perf_event *bp) in bp_constraints_lock()
117 struct mutex *tsk_mtx = get_task_bps_mutex(bp); in bp_constraints_lock()
139 static void bp_constraints_unlock(struct mutex *tsk_mtx) in bp_constraints_unlock()
151 struct mutex *tsk_mtx = get_task_bps_mutex(bp); in bp_constraints_is_locked()
160 struct mutex *tsk_mtx = get_task_bps_mutex(bp); in assert_bp_constraints_lock_held()
625 struct mutex *mtx = bp_constraints_lock(bp); in reserve_bp_slot()
646 struct mutex *mtx = bp_constraints_lock(bp); in release_bp_slot()
677 struct mutex *mtx = bp_constraints_lock(bp); in modify_bp_slot()
Dcore.c277 lockdep_assert_held(&ctx->mutex); in event_function_call()
1302 mutex_lock_nested(&ctx->mutex, nesting); in perf_event_ctx_lock_nested()
1304 mutex_unlock(&ctx->mutex); in perf_event_ctx_lock_nested()
1321 mutex_unlock(&ctx->mutex); in perf_event_ctx_unlock()
2435 lockdep_assert_held(&ctx->mutex); in perf_remove_from_context()
2860 lockdep_assert_held(&ctx->mutex); in perf_install_in_context()
4348 mutex_lock(&ctx->mutex); in perf_event_remove_on_exec()
4372 mutex_unlock(&ctx->mutex); in perf_event_remove_on_exec()
4636 mutex_init(&ctx->mutex); in __perf_event_init_context()
4995 lockdep_assert_held(&ctx->mutex); in exclusive_event_installable()
[all …]
/kernel/rcu/
Dtree.h116 struct mutex boost_kthread_mutex;
214 struct mutex nocb_gp_kthread_mutex; /* Exclusion for nocb gp kthread */
336 struct mutex barrier_mutex; /* Guards barrier fields. */
345 struct mutex exp_mutex; /* Serialize expedited GP. */
346 struct mutex exp_wake_mutex; /* Serialize wakeup. */
/kernel/irq/
Dmsi.c83 lockdep_assert_held(&dev->msi.data->mutex); in msi_add_msi_desc()
108 lockdep_assert_held(&dev->msi.data->mutex); in msi_add_simple_msi_descs()
155 lockdep_assert_held(&dev->msi.data->mutex); in msi_free_msi_descs_range()
216 mutex_init(&md->mutex); in msi_setup_device_data()
228 mutex_lock(&dev->msi.data->mutex); in msi_lock_descs()
240 mutex_unlock(&dev->msi.data->mutex); in msi_unlock_descs()
274 lockdep_assert_held(&md->mutex); in msi_first_desc()
300 lockdep_assert_held(&md->mutex); in msi_next_desc()
936 lockdep_assert_held(&dev->msi.data->mutex); in msi_domain_alloc_irqs_descs_locked()
1012 lockdep_assert_held(&dev->msi.data->mutex); in msi_domain_free_irqs_descs_locked()
/kernel/sched/
Dpelt.c487 static DEFINE_MUTEX(mutex); in sched_pelt_multiplier()
491 mutex_lock(&mutex); in sched_pelt_multiplier()
519 mutex_unlock(&mutex); in sched_pelt_multiplier()
Drt.c3103 static DEFINE_MUTEX(mutex); in sched_rt_handler()
3106 mutex_lock(&mutex); in sched_rt_handler()
3133 mutex_unlock(&mutex); in sched_rt_handler()
3142 static DEFINE_MUTEX(mutex); in sched_rr_handler()
3144 mutex_lock(&mutex); in sched_rr_handler()
3158 mutex_unlock(&mutex); in sched_rr_handler()
/kernel/trace/
Dftrace_internal.h7 extern struct mutex ftrace_lock;
Dring_buffer.c513 struct mutex mutex; member
1800 mutex_init(&buffer->mutex); in __ring_buffer_alloc()
2142 mutex_lock(&buffer->mutex); in ring_buffer_resize()
2285 mutex_unlock(&buffer->mutex); in ring_buffer_resize()
2306 mutex_unlock(&buffer->mutex); in ring_buffer_resize()
2313 mutex_lock(&buffer->mutex); in ring_buffer_change_overwrite()
2318 mutex_unlock(&buffer->mutex); in ring_buffer_change_overwrite()
5479 mutex_lock(&buffer->mutex); in ring_buffer_reset_cpu()
5492 mutex_unlock(&buffer->mutex); in ring_buffer_reset_cpu()
5510 mutex_lock(&buffer->mutex); in ring_buffer_reset_online_cpus()
[all …]
Dtrace_uprobe.c859 struct mutex mutex; member
881 mutex_init(&per_cpu_ptr(uprobe_cpu_buffer, cpu)->mutex); in uprobe_buffer_init()
940 mutex_lock(&ucb->mutex); in uprobe_buffer_get()
947 mutex_unlock(&ucb->mutex); in uprobe_buffer_put()
/kernel/trace/rv/
Drv.h23 extern struct mutex rv_interface_lock;
/kernel/gcov/
Dgcov.h83 extern struct mutex gcov_lock;
/kernel/livepatch/
Dcore.h7 extern struct mutex klp_mutex;
/kernel/time/
Dposix-cpu-timers.c1169 mutex_lock(&cw->mutex); in posix_cpu_timers_work()
1171 mutex_unlock(&cw->mutex); in posix_cpu_timers_work()
1192 mutex_lock(&tsk->posix_cputimers_work.mutex); in posix_cpu_timer_wait_running()
1194 mutex_unlock(&tsk->posix_cputimers_work.mutex); in posix_cpu_timer_wait_running()
1225 mutex_init(&p->posix_cputimers_work.mutex); in clear_posix_cputimers_work()

12