Searched refs:rt_mutex (Results 1 - 12 of 12) sorted by relevance

/linux-4.4.14/kernel/locking/
H A Drtmutex-debug.h13 rt_mutex_deadlock_account_lock(struct rt_mutex *lock, struct task_struct *task);
17 extern void debug_rt_mutex_init(struct rt_mutex *lock, const char *name);
18 extern void debug_rt_mutex_lock(struct rt_mutex *lock);
19 extern void debug_rt_mutex_unlock(struct rt_mutex *lock);
20 extern void debug_rt_mutex_proxy_lock(struct rt_mutex *lock,
22 extern void debug_rt_mutex_proxy_unlock(struct rt_mutex *lock);
25 struct rt_mutex *lock);
H A Drtmutex_common.h18 * This is the control structure for tasks blocked on a rt_mutex,
29 struct rt_mutex *lock;
33 struct rt_mutex *deadlock_lock;
41 static inline int rt_mutex_has_waiters(struct rt_mutex *lock) rt_mutex_has_waiters()
47 rt_mutex_top_waiter(struct rt_mutex *lock) rt_mutex_top_waiter()
76 static inline struct task_struct *rt_mutex_owner(struct rt_mutex *lock) rt_mutex_owner()
100 extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock);
101 extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock,
103 extern void rt_mutex_proxy_unlock(struct rt_mutex *lock,
105 extern int rt_mutex_start_proxy_lock(struct rt_mutex *lock,
108 extern int rt_mutex_finish_proxy_lock(struct rt_mutex *lock,
111 extern int rt_mutex_timed_futex_lock(struct rt_mutex *l, struct hrtimer_sleeper *to);
112 extern bool rt_mutex_futex_unlock(struct rt_mutex *lock,
H A Drtmutex-debug.c41 static void printk_lock(struct rt_mutex *lock, int print_owner) printk_lock()
71 struct rt_mutex *lock) debug_rt_mutex_deadlock()
136 void debug_rt_mutex_lock(struct rt_mutex *lock) debug_rt_mutex_lock()
140 void debug_rt_mutex_unlock(struct rt_mutex *lock) debug_rt_mutex_unlock()
146 debug_rt_mutex_proxy_lock(struct rt_mutex *lock, struct task_struct *powner) debug_rt_mutex_proxy_lock()
150 void debug_rt_mutex_proxy_unlock(struct rt_mutex *lock) debug_rt_mutex_proxy_unlock()
167 void debug_rt_mutex_init(struct rt_mutex *lock, const char *name) debug_rt_mutex_init()
177 rt_mutex_deadlock_account_lock(struct rt_mutex *lock, struct task_struct *task) rt_mutex_deadlock_account_lock()
H A Drtmutex.c50 rt_mutex_set_owner(struct rt_mutex *lock, struct task_struct *owner) rt_mutex_set_owner()
60 static inline void clear_rt_mutex_waiters(struct rt_mutex *lock) clear_rt_mutex_waiters()
66 static void fixup_rt_mutex_waiters(struct rt_mutex *lock) fixup_rt_mutex_waiters()
86 static inline void mark_rt_mutex_waiters(struct rt_mutex *lock) mark_rt_mutex_waiters()
102 static inline bool unlock_rt_mutex_safe(struct rt_mutex *lock)
141 static inline void mark_rt_mutex_waiters(struct rt_mutex *lock) mark_rt_mutex_waiters()
150 static inline bool unlock_rt_mutex_safe(struct rt_mutex *lock)
180 rt_mutex_enqueue(struct rt_mutex *lock, struct rt_mutex_waiter *waiter) rt_mutex_enqueue()
206 rt_mutex_dequeue(struct rt_mutex *lock, struct rt_mutex_waiter *waiter) rt_mutex_dequeue()
356 static inline struct rt_mutex *task_blocked_on_lock(struct task_struct *p) task_blocked_on_lock()
426 struct rt_mutex *orig_lock, rt_mutex_adjust_prio_chain()
427 struct rt_mutex *next_lock, rt_mutex_adjust_prio_chain()
434 struct rt_mutex *lock; rt_mutex_adjust_prio_chain()
766 static int try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task, try_to_take_rt_mutex()
888 static int task_blocks_on_rt_mutex(struct rt_mutex *lock, task_blocks_on_rt_mutex()
895 struct rt_mutex *next_lock; task_blocks_on_rt_mutex()
977 struct rt_mutex *lock) mark_wakeup_next_waiter()
1015 static void remove_waiter(struct rt_mutex *lock, remove_waiter()
1020 struct rt_mutex *next_lock; remove_waiter()
1075 struct rt_mutex *next_lock; rt_mutex_adjust_pi()
1098 * @lock: the rt_mutex to take
1107 __rt_mutex_slowlock(struct rt_mutex *lock, int state, __rt_mutex_slowlock()
1170 rt_mutex_slowlock(struct rt_mutex *lock, int state, rt_mutex_slowlock()
1228 static inline int rt_mutex_slowtrylock(struct rt_mutex *lock) rt_mutex_slowtrylock()
1263 static bool __sched rt_mutex_slowunlock(struct rt_mutex *lock, rt_mutex_slowunlock()
1332 rt_mutex_fastlock(struct rt_mutex *lock, int state, rt_mutex_fastlock()
1333 int (*slowfn)(struct rt_mutex *lock, int state, rt_mutex_fastlock()
1345 rt_mutex_timed_fastlock(struct rt_mutex *lock, int state, rt_mutex_timed_fastlock()
1348 int (*slowfn)(struct rt_mutex *lock, int state, rt_mutex_timed_fastlock()
1361 rt_mutex_fasttrylock(struct rt_mutex *lock, rt_mutex_fasttrylock()
1362 int (*slowfn)(struct rt_mutex *lock)) rt_mutex_fasttrylock()
1372 rt_mutex_fastunlock(struct rt_mutex *lock, rt_mutex_fastunlock()
1373 bool (*slowfn)(struct rt_mutex *lock, rt_mutex_fastunlock()
1393 * rt_mutex_lock - lock a rt_mutex
1395 * @lock: the rt_mutex to be locked
1397 void __sched rt_mutex_lock(struct rt_mutex *lock) rt_mutex_lock()
1406 * rt_mutex_lock_interruptible - lock a rt_mutex interruptible
1408 * @lock: the rt_mutex to be locked
1414 int __sched rt_mutex_lock_interruptible(struct rt_mutex *lock) rt_mutex_lock_interruptible()
1425 int rt_mutex_timed_futex_lock(struct rt_mutex *lock, rt_mutex_timed_futex_lock()
1436 * rt_mutex_timed_lock - lock a rt_mutex interruptible
1440 * @lock: the rt_mutex to be locked
1449 rt_mutex_timed_lock(struct rt_mutex *lock, struct hrtimer_sleeper *timeout) rt_mutex_timed_lock()
1460 * rt_mutex_trylock - try to lock a rt_mutex
1462 * @lock: the rt_mutex to be locked
1470 int __sched rt_mutex_trylock(struct rt_mutex *lock) rt_mutex_trylock()
1480 * rt_mutex_unlock - unlock a rt_mutex
1482 * @lock: the rt_mutex to be unlocked
1484 void __sched rt_mutex_unlock(struct rt_mutex *lock) rt_mutex_unlock()
1492 * @lock: the rt_mutex to be unlocked
1497 bool __sched rt_mutex_futex_unlock(struct rt_mutex *lock, rt_mutex_futex_unlock()
1515 void rt_mutex_destroy(struct rt_mutex *lock) rt_mutex_destroy()
1534 void __rt_mutex_init(struct rt_mutex *lock, const char *name) __rt_mutex_init()
1546 * rt_mutex_init_proxy_locked - initialize and lock a rt_mutex on behalf of a
1549 * @lock: the rt_mutex to be locked
1555 void rt_mutex_init_proxy_locked(struct rt_mutex *lock, rt_mutex_init_proxy_locked()
1567 * @lock: the rt_mutex to be locked
1572 void rt_mutex_proxy_unlock(struct rt_mutex *lock, rt_mutex_proxy_unlock()
1582 * @lock: the rt_mutex to take
1593 int rt_mutex_start_proxy_lock(struct rt_mutex *lock, rt_mutex_start_proxy_lock()
1642 struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock) rt_mutex_next_owner()
1652 * @lock: the rt_mutex we were woken on
1665 int rt_mutex_finish_proxy_lock(struct rt_mutex *lock, rt_mutex_finish_proxy_lock()
/linux-4.4.14/include/linux/
H A Drtmutex.h22 * The rt_mutex structure
29 struct rt_mutex { struct
76 struct rt_mutex mutexname = __RT_MUTEX_INITIALIZER(mutexname)
84 static inline int rt_mutex_is_locked(struct rt_mutex *lock) rt_mutex_is_locked()
89 extern void __rt_mutex_init(struct rt_mutex *lock, const char *name);
90 extern void rt_mutex_destroy(struct rt_mutex *lock);
92 extern void rt_mutex_lock(struct rt_mutex *lock);
93 extern int rt_mutex_lock_interruptible(struct rt_mutex *lock);
94 extern int rt_mutex_timed_lock(struct rt_mutex *lock,
97 extern int rt_mutex_trylock(struct rt_mutex *lock);
99 extern void rt_mutex_unlock(struct rt_mutex *lock);
H A Di2c.h508 struct rt_mutex bus_lock;
H A Dsched.h1601 /* PI waiters blocked on a rt_mutex held by this task */
/linux-4.4.14/kernel/
H A Dfutex.c199 struct rt_mutex pi_mutex;
227 * the rt_mutex code. See unqueue_me_pi().
912 * pi_state->rt_mutex will fixup owner. attach_to_pi_state()
1640 * + nr_requeue, since it acquires the rt_mutex prior to futex_requeue()
1641 * returning to userspace, so as to not leave the rt_mutex with futex_requeue()
1814 /* Prepare the waiter to take the rt_mutex. */ futex_requeue()
2095 * @q: futex_q (contains pi_state and access to the rt_mutex)
2096 * @locked: if the attempt to take the rt_mutex succeeded (1) or not (0)
2098 * After attempting to lock an rt_mutex, this function is called to cleanup
2128 * Try to get the rt_mutex now. This might fail as some other fixup_owner()
2129 * task acquired the rt_mutex after we removed ourself from the fixup_owner()
2130 * rt_mutex waiters list. fixup_owner()
2140 * rt_mutex. Too late. fixup_owner()
2153 * the owner of the rt_mutex. fixup_owner()
2659 * on uaddr2 and complete the acquisition of the rt_mutex prior to returning to
2660 * userspace. This ensures the rt_mutex maintains an owner when it has waiters;
2673 * If 2, we may then block on trying to take the rt_mutex and return via:
2693 struct rt_mutex *pi_mutex = NULL; futex_wait_requeue_pi()
2814 * fault, unlock the rt_mutex and return the fault to userspace. futex_wait_requeue_pi()
/linux-4.4.14/drivers/media/usb/em28xx/
H A Dem28xx.h646 struct rt_mutex i2c_bus_lock;
/linux-4.4.14/kernel/rcu/
H A Dtree_plugin.h1020 * We boost task t by manufacturing an rt_mutex that appears to rcu_boost()
1021 * be held by task t. We leave a pointer to that rt_mutex where rcu_boost()
1024 * simply acquiring this artificial rt_mutex will boost task rcu_boost()
H A Dtree.h214 struct rt_mutex boost_mtx;
/linux-4.4.14/kernel/sched/
H A Dcore.c3363 * Used by the rt_mutex code to implement priority inheritance

Completed in 427 milliseconds