Home
last modified time | relevance | path

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

/linux/include/linux/
H A 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);
102 extern void _rt_mutex_lock_nest_lock(struct rt_mutex *lock, struct lockdep_map *nest_lock);
111 extern void rt_mutex_lock(struct rt_mutex *lock);
116 extern int rt_mutex_lock_interruptible(struct rt_mutex *lock);
117 extern int rt_mutex_lock_killable(struct rt_mutex *lock);
118 extern int rt_mutex_trylock(struct rt_mutex *lock);
120 extern void rt_mutex_unlock(struct rt_mutex *lock);
H A Dww_mutex.h33 #define WW_MUTEX_BASE rt_mutex
H A Dsched.h2200 static inline void __clear_task_blocked_on(struct task_struct *p, struct rt_mutex *m) in __clear_task_blocked_on()
2204 static inline void clear_task_blocked_on(struct task_struct *p, struct rt_mutex *m) in clear_task_blocked_on()
/linux/kernel/locking/
H A 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, unsigned long *flags) in lock_wait_lock()
152 static inline void unlock_wait_lock(struct rt_mutex *lock, unsigned long *flags) in unlock_wait_lock()
[all …]
H A Drtmutex_api.c40 static __always_inline int __rt_mutex_lock_common(struct rt_mutex *lock, in __rt_mutex_lock_common()
68 void __sched rt_mutex_lock_nested(struct rt_mutex *lock, unsigned int subclass) in rt_mutex_lock_nested()
74 void __sched _rt_mutex_lock_nest_lock(struct rt_mutex *lock, struct lockdep_map *nest_lock) in _rt_mutex_lock_nest_lock()
87 void __sched rt_mutex_lock(struct rt_mutex *lock) in rt_mutex_lock()
103 int __sched rt_mutex_lock_interruptible(struct rt_mutex *lock) in rt_mutex_lock_interruptible()
118 int __sched rt_mutex_lock_killable(struct rt_mutex *lock) in rt_mutex_lock_killable()
136 int __sched rt_mutex_trylock(struct rt_mutex *lock) in rt_mutex_trylock()
156 void __sched rt_mutex_unlock(struct rt_mutex *lock) in rt_mutex_unlock()
231 void __sched __rt_mutex_init(struct rt_mutex *lock, const char *name, in __rt_mutex_init()
H A Dww_rt_mutex.c14 struct rt_mutex *rtm = &lock->base; in ww_mutex_trylock()
42 struct rt_mutex *rtm = &lock->base; in __ww_rt_mutex_lock()
94 struct rt_mutex *rtm = &lock->base; in ww_mutex_unlock()
H A Dlocktorture.c46 "Do periodic rt-boost. 0=Disable, 1=Only for rt_mutex, 2=For all lock types.");
697 static struct rt_mutex torture_nested_rtmutexes[MAX_NESTED_LOCKS]; in torture_rt_boost_rtmutex()
/linux/Documentation/locking/
H A 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
H A 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
H A Dlocktypes.rst40 - rt_mutex
147 PREEMPT_RT kernels map rw_semaphore to a separate rt_mutex-based
233 based on rt_mutex which changes the semantics:
308 PREEMPT_RT kernels map rwlock_t to a separate rt_mutex-based
H A Dpi-futex.rst111 pi_state->rt_mutex and thus wakes up any potential waiters.
/linux/Documentation/trace/rv/
H A Dmonitor_rtapp.rst128 In the release path of rt_mutex, a boosted task is de-boosted before waking
129 the rt_mutex's waiter. Consequently, the monitor may see a real-time-unsafe
/linux/Documentation/translations/it_IT/locking/
H A Dlocktypes.rst42 - rt_mutex
150 su rt_mutex, e questo ne modifica l'imparzialità:
239 sull'uso di rt_mutex. Questo ne modifica il significato:
317 sull'uso di rt_mutex. Questo ne modifica il significato:
/linux/kernel/rcu/
H A Dtree.h110 struct rt_mutex boost_mtx;
/linux/drivers/media/usb/em28xx/
H A Dem28xx.h684 struct rt_mutex i2c_bus_lock;
/linux/Documentation/admin-guide/
H A Dkernel-parameters.txt3351 only rt_mutex, and 2 to boost unconditionally.