Home
last modified time | relevance | path

Searched refs:rt_mutex (Results 1 – 14 of 14) sorted by relevance

/Linux-v5.15/include/linux/
Drtmutex.h57 struct rt_mutex { struct
96 struct rt_mutex mutexname = __RT_MUTEX_INITIALIZER(mutexname)
98 extern void __rt_mutex_init(struct rt_mutex *lock, const char *name, struct lock_class_key *key);
101 extern void rt_mutex_lock_nested(struct rt_mutex *lock, unsigned int subclass);
104 extern void rt_mutex_lock(struct rt_mutex *lock);
108 extern int rt_mutex_lock_interruptible(struct rt_mutex *lock);
109 extern int rt_mutex_trylock(struct rt_mutex *lock);
111 extern void rt_mutex_unlock(struct rt_mutex *lock);
Dww_mutex.h34 #define WW_MUTEX_BASE rt_mutex
Di2c.h719 struct rt_mutex bus_lock;
720 struct rt_mutex mux_lock;
/Linux-v5.15/kernel/locking/
Dww_mutex.h90 #define MUTEX rt_mutex
94 __ww_waiter_first(struct rt_mutex *lock) in __ww_waiter_first()
103 __ww_waiter_next(struct rt_mutex *lock, struct rt_mutex_waiter *w) in __ww_waiter_next()
112 __ww_waiter_prev(struct rt_mutex *lock, struct rt_mutex_waiter *w) in __ww_waiter_prev()
121 __ww_waiter_last(struct rt_mutex *lock) in __ww_waiter_last()
130 __ww_waiter_add(struct rt_mutex *lock, struct rt_mutex_waiter *waiter, struct rt_mutex_waiter *pos) in __ww_waiter_add()
136 __ww_mutex_owner(struct rt_mutex *lock) in __ww_mutex_owner()
142 __ww_mutex_has_waiters(struct rt_mutex *lock) in __ww_mutex_has_waiters()
147 static inline void lock_wait_lock(struct rt_mutex *lock) in lock_wait_lock()
152 static inline void unlock_wait_lock(struct rt_mutex *lock) in unlock_wait_lock()
[all …]
Drtmutex_api.c22 static __always_inline int __rt_mutex_lock_common(struct rt_mutex *lock, in __rt_mutex_lock_common()
49 void __sched rt_mutex_lock_nested(struct rt_mutex *lock, unsigned int subclass) in rt_mutex_lock_nested()
62 void __sched rt_mutex_lock(struct rt_mutex *lock) in rt_mutex_lock()
78 int __sched rt_mutex_lock_interruptible(struct rt_mutex *lock) in rt_mutex_lock_interruptible()
96 int __sched rt_mutex_trylock(struct rt_mutex *lock) in rt_mutex_trylock()
116 void __sched rt_mutex_unlock(struct rt_mutex *lock) in rt_mutex_unlock()
191 void __sched __rt_mutex_init(struct rt_mutex *lock, const char *name, in __rt_mutex_init()
Dww_rt_mutex.c17 struct rt_mutex *rtm = &lock->base; in __ww_rt_mutex_lock()
69 struct rt_mutex *rtm = &lock->base; in ww_mutex_unlock()
Drtmutex.c34 struct rt_mutex *lock, in __ww_mutex_add_waiter()
40 static inline void __ww_mutex_check_waiters(struct rt_mutex *lock, in __ww_mutex_check_waiters()
50 static inline int __ww_mutex_check_kill(struct rt_mutex *lock, in __ww_mutex_check_kill()
1118 struct rt_mutex *rtm; in task_blocks_on_rt_mutex()
1121 rtm = container_of(lock, struct rt_mutex, rtmutex); in task_blocks_on_rt_mutex()
1478 struct rt_mutex *rtm = container_of(lock, struct rt_mutex, rtmutex); in rt_mutex_slowlock_block()
1556 struct rt_mutex *rtm = container_of(lock, struct rt_mutex, rtmutex); in __rt_mutex_slowlock()
/Linux-v5.15/Documentation/locking/
Dfutex-requeue-pi.rst6 special handling in order to ensure the underlying rt_mutex is never
50 underlying rt_mutex with waiters, and no owner, breaking the
89 In order to ensure the rt_mutex has an owner if it has waiters, it
91 to be able to acquire the rt_mutex before returning to user space.
93 acquire the rt_mutex as it would open a race window between the
97 The solution involves two new rt_mutex helper routines,
99 allow the requeue code to acquire an uncontended rt_mutex on behalf
100 of the waiter and to enqueue the waiter on a contended rt_mutex.
120 task as a waiter on the underlying rt_mutex. It is possible that
Drt-mutex.rst22 boosting to the owner of the other rt_mutex it gets blocked on. The
23 priority boosting is immediately removed once the rt_mutex has been
Dlocktypes.rst40 - rt_mutex
147 PREEMPT_RT kernels map rw_semaphore to a separate rt_mutex-based
236 based on rt_mutex which changes the semantics:
311 PREEMPT_RT kernels map rwlock_t to a separate rt_mutex-based
Dpi-futex.rst111 pi_state->rt_mutex and thus wakes up any potential waiters.
/Linux-v5.15/drivers/staging/media/atomisp/pci/
Datomisp_internal.h248 struct rt_mutex mutex;
/Linux-v5.15/kernel/rcu/
Dtree.h108 struct rt_mutex boost_mtx;
/Linux-v5.15/drivers/media/usb/em28xx/
Dem28xx.h693 struct rt_mutex i2c_bus_lock;