rt_mutex
struct rt_mutex i2c_bus_lock;
struct rt_mutex bus_lock;
struct rt_mutex mux_lock;
struct rt_mutex mutexname = __RT_MUTEX_INITIALIZER(mutexname)
extern void __rt_mutex_init(struct rt_mutex *lock, const char *name, struct lock_class_key *key);
extern void rt_mutex_lock_nested(struct rt_mutex *lock, unsigned int subclass);
extern void _rt_mutex_lock_nest_lock(struct rt_mutex *lock, struct lockdep_map *nest_lock);
extern void rt_mutex_lock(struct rt_mutex *lock);
extern int rt_mutex_lock_interruptible(struct rt_mutex *lock);
extern int rt_mutex_lock_killable(struct rt_mutex *lock);
extern int rt_mutex_trylock(struct rt_mutex *lock);
extern void rt_mutex_unlock(struct rt_mutex *lock);
static inline void __clear_task_blocked_on(struct task_struct *p, struct rt_mutex *m)
static inline void clear_task_blocked_on(struct task_struct *p, struct rt_mutex *m)
#define WW_MUTEX_BASE rt_mutex
static struct rt_mutex torture_nested_rtmutexes[MAX_NESTED_LOCKS];
struct rt_mutex *rtm;
rtm = container_of(lock, struct rt_mutex, rtmutex);
struct rt_mutex *rtm = container_of(lock, struct rt_mutex, rtmutex);
struct rt_mutex *rtm = container_of(lock, struct rt_mutex, rtmutex);
struct rt_mutex *lock,
static inline void __ww_mutex_check_waiters(struct rt_mutex *lock,
static inline int __ww_mutex_check_kill(struct rt_mutex *lock,
int __sched rt_mutex_lock_interruptible(struct rt_mutex *lock)
int __sched rt_mutex_lock_killable(struct rt_mutex *lock)
int __sched rt_mutex_trylock(struct rt_mutex *lock)
void __sched rt_mutex_unlock(struct rt_mutex *lock)
void __sched __rt_mutex_init(struct rt_mutex *lock, const char *name,
static __always_inline int __rt_mutex_lock_common(struct rt_mutex *lock,
void __sched rt_mutex_lock_nested(struct rt_mutex *lock, unsigned int subclass)
void __sched _rt_mutex_lock_nest_lock(struct rt_mutex *lock, struct lockdep_map *nest_lock)
void __sched rt_mutex_lock(struct rt_mutex *lock)
__ww_waiter_next(struct rt_mutex *lock, struct rt_mutex_waiter *w)
__ww_waiter_prev(struct rt_mutex *lock, struct rt_mutex_waiter *w)
__ww_waiter_last(struct rt_mutex *lock)
__ww_waiter_add(struct rt_mutex *lock, struct rt_mutex_waiter *waiter, struct rt_mutex_waiter *pos)
__ww_mutex_owner(struct rt_mutex *lock)
__ww_mutex_has_waiters(struct rt_mutex *lock)
static inline void lock_wait_lock(struct rt_mutex *lock, unsigned long *flags)
static inline void unlock_wait_lock(struct rt_mutex *lock, unsigned long *flags)
static inline void lockdep_assert_wait_lock_held(struct rt_mutex *lock)
#define MUTEX rt_mutex
__ww_waiter_first(struct rt_mutex *lock)
struct rt_mutex *rtm = &lock->base;
struct rt_mutex *rtm = &lock->base;
struct rt_mutex *rtm = &lock->base;
struct rt_mutex boost_mtx;