Home
last modified time | relevance | path

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

12

/kernel/locking/
Dmutex.c45 __mutex_init(struct mutex *lock, const char *name, struct lock_class_key *key) in __mutex_init()
79 static inline struct task_struct *__mutex_owner(struct mutex *lock) in __mutex_owner()
89 bool mutex_is_locked(struct mutex *lock) in mutex_is_locked()
100 static inline struct task_struct *__mutex_trylock_common(struct mutex *lock, bool handoff) in __mutex_trylock_common()
139 static inline bool __mutex_trylock_or_handoff(struct mutex *lock, bool handoff) in __mutex_trylock_or_handoff()
147 static inline bool __mutex_trylock(struct mutex *lock) in __mutex_trylock()
163 static __always_inline bool __mutex_trylock_fast(struct mutex *lock) in __mutex_trylock_fast()
176 static __always_inline bool __mutex_unlock_fast(struct mutex *lock) in __mutex_unlock_fast()
184 static inline void __mutex_set_flag(struct mutex *lock, unsigned long flag) in __mutex_set_flag()
189 static inline void __mutex_clear_flag(struct mutex *lock, unsigned long flag) in __mutex_clear_flag()
[all …]
Drtmutex_api.c477 void __mutex_rt_init(struct mutex *mutex, const char *name, in __mutex_rt_init() argument
480 debug_check_no_locks_freed((void *)mutex, sizeof(*mutex)); in __mutex_rt_init()
481 lockdep_init_map_wait(&mutex->dep_map, name, key, 0, LD_WAIT_SLEEP); in __mutex_rt_init()
485 static __always_inline int __mutex_lock_common(struct mutex *lock, in __mutex_lock_common()
504 void __sched mutex_lock_nested(struct mutex *lock, unsigned int subclass) in mutex_lock_nested()
510 void __sched _mutex_lock_nest_lock(struct mutex *lock, in _mutex_lock_nest_lock()
517 int __sched mutex_lock_interruptible_nested(struct mutex *lock, in mutex_lock_interruptible_nested()
524 int __sched mutex_lock_killable_nested(struct mutex *lock, in mutex_lock_killable_nested()
531 void __sched mutex_lock_io_nested(struct mutex *lock, unsigned int subclass) in mutex_lock_io_nested()
545 void __sched mutex_lock(struct mutex *lock) in mutex_lock()
[all …]
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()
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,
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 …]
Dtest-ww_mutex.c21 struct ww_mutex mutex; member
39 while (!ww_mutex_trylock(&mtx->mutex)) in test_mutex_work()
42 ww_mutex_lock(&mtx->mutex, NULL); in test_mutex_work()
45 ww_mutex_unlock(&mtx->mutex); in test_mutex_work()
55 ww_mutex_init(&mtx.mutex, &ww_class); in __test_mutex()
67 ww_mutex_lock(&mtx.mutex, (flags & TEST_MTX_CTX) ? &ctx : NULL); in __test_mutex()
83 ww_mutex_unlock(&mtx.mutex); in __test_mutex()
114 struct ww_mutex mutex; in test_aa() local
118 ww_mutex_init(&mutex, &ww_class); in test_aa()
121 ww_mutex_lock(&mutex, &ctx); in test_aa()
[all …]
DMakefile6 obj-y += mutex.o semaphore.o rwsem.o percpu-rwsem.o
18 obj-$(CONFIG_DEBUG_MUTEXES) += mutex-debug.o
/kernel/
Dworkqueue.c264 struct mutex mutex; /* protects this wq */ member
397 !lockdep_is_held(&wq->mutex) && \
452 lockdep_is_held(&(wq->mutex)))
2840 mutex_lock(&wq->mutex); in flush_workqueue()
2887 mutex_unlock(&wq->mutex); in flush_workqueue()
2900 mutex_lock(&wq->mutex); in flush_workqueue()
2972 mutex_unlock(&wq->mutex); in flush_workqueue()
2997 mutex_lock(&wq->mutex); in drain_workqueue()
3000 mutex_unlock(&wq->mutex); in drain_workqueue()
3004 mutex_lock(&wq->mutex); in drain_workqueue()
[all …]
Dnotifier.c424 mutex_lock(&nh->mutex); in srcu_notifier_chain_register()
426 mutex_unlock(&nh->mutex); in srcu_notifier_chain_register()
454 mutex_lock(&nh->mutex); in srcu_notifier_chain_unregister()
456 mutex_unlock(&nh->mutex); in srcu_notifier_chain_unregister()
505 mutex_init(&nh->mutex); in srcu_init_notifier_head()
Dkprobes.c119 .mutex = __MUTEX_INITIALIZER(kprobe_insn_slots.mutex),
139 mutex_lock(&c->mutex); in __get_insn_slot()
193 mutex_unlock(&c->mutex); in __get_insn_slot()
254 mutex_lock(&c->mutex); in __free_insn_slot()
280 mutex_unlock(&c->mutex); in __free_insn_slot()
340 .mutex = __MUTEX_INITIALIZER(kprobe_optinsn_slots.mutex),
Daudit.h243 extern struct mutex audit_filter_mutex;
/kernel/bpf/
Dtrampoline.c83 mutex_init(&tr->mutex); in bpf_trampoline_lookup()
420 mutex_lock(&tr->mutex); in bpf_trampoline_link_prog()
460 mutex_unlock(&tr->mutex); in bpf_trampoline_link_prog()
471 mutex_lock(&tr->mutex); in bpf_trampoline_unlink_prog()
483 mutex_unlock(&tr->mutex); in bpf_trampoline_unlink_prog()
496 mutex_lock(&tr->mutex); in bpf_trampoline_get()
503 mutex_unlock(&tr->mutex); in bpf_trampoline_get()
516 WARN_ON_ONCE(mutex_is_locked(&tr->mutex)); in bpf_trampoline_put()
Ddispatcher.c141 mutex_lock(&d->mutex); in bpf_dispatcher_change_prog()
158 mutex_unlock(&d->mutex); in bpf_dispatcher_change_prog()
/kernel/sched/
Dpelt.c485 static DEFINE_MUTEX(mutex); in sched_pelt_multiplier()
489 mutex_lock(&mutex); in sched_pelt_multiplier()
514 mutex_unlock(&mutex); in sched_pelt_multiplier()
Drt.c2934 static DEFINE_MUTEX(mutex); in sched_rt_handler()
2937 mutex_lock(&mutex); in sched_rt_handler()
2964 mutex_unlock(&mutex); in sched_rt_handler()
2973 static DEFINE_MUTEX(mutex); in sched_rr_handler()
2975 mutex_lock(&mutex); in sched_rr_handler()
2989 mutex_unlock(&mutex); in sched_rr_handler()
/kernel/rcu/
Dtree.h329 struct mutex barrier_mutex; /* Guards barrier fields. */
336 struct mutex exp_mutex; /* Serialize expedited GP. */
337 struct mutex exp_wake_mutex; /* Serialize wakeup. */
/kernel/events/
Dcore.c277 lockdep_assert_held(&ctx->mutex); in event_function_call()
1393 mutex_lock_nested(&ctx->mutex, nesting); in perf_event_ctx_lock_nested()
1395 mutex_unlock(&ctx->mutex); in perf_event_ctx_lock_nested()
1412 mutex_unlock(&ctx->mutex); in perf_event_ctx_unlock()
2501 lockdep_assert_held(&ctx->mutex); in perf_remove_from_context()
2928 lockdep_assert_held(&ctx->mutex); in perf_install_in_context()
4429 mutex_lock(&ctx->mutex); in perf_event_remove_on_exec()
4453 mutex_unlock(&ctx->mutex); in perf_event_remove_on_exec()
4717 mutex_init(&ctx->mutex); in __perf_event_init_context()
5076 lockdep_assert_held(&ctx->mutex); in exclusive_event_installable()
[all …]
/kernel/trace/
Dftrace_internal.h7 extern struct mutex ftrace_lock;
Dring_buffer.c504 struct mutex mutex; member
1766 mutex_init(&buffer->mutex); in __ring_buffer_alloc()
2108 mutex_lock(&buffer->mutex); in ring_buffer_resize()
2251 mutex_unlock(&buffer->mutex); in ring_buffer_resize()
2272 mutex_unlock(&buffer->mutex); in ring_buffer_resize()
2279 mutex_lock(&buffer->mutex); in ring_buffer_change_overwrite()
2284 mutex_unlock(&buffer->mutex); in ring_buffer_change_overwrite()
5434 mutex_lock(&buffer->mutex); in ring_buffer_reset_cpu()
5447 mutex_unlock(&buffer->mutex); in ring_buffer_reset_cpu()
5465 mutex_lock(&buffer->mutex); in ring_buffer_reset_online_cpus()
[all …]
Dtrace_uprobe.c856 struct mutex mutex; member
878 mutex_init(&per_cpu_ptr(uprobe_cpu_buffer, cpu)->mutex); in uprobe_buffer_init()
937 mutex_lock(&ucb->mutex); in uprobe_buffer_get()
944 mutex_unlock(&ucb->mutex); in uprobe_buffer_put()
Dtrace_stat.c36 struct mutex stat_mutex;
Dtrace.h399 extern struct mutex trace_types_lock;
1530 extern struct mutex event_mutex;
1993 struct mutex *lock;
/kernel/livepatch/
Dcore.h7 extern struct mutex klp_mutex;
/kernel/gcov/
Dgcov.h83 extern struct mutex gcov_lock;
/kernel/time/
Dposix-cpu-timers.c1162 mutex_lock(&cw->mutex); in posix_cpu_timers_work()
1164 mutex_unlock(&cw->mutex); in posix_cpu_timers_work()
1185 mutex_lock(&tsk->posix_cputimers_work.mutex); in posix_cpu_timer_wait_running()
1187 mutex_unlock(&tsk->posix_cputimers_work.mutex); in posix_cpu_timer_wait_running()
1218 mutex_init(&p->posix_cputimers_work.mutex); in clear_posix_cputimers_work()

12