Function report |
Source Code:kernel\locking\rtmutex.c |
Create Date:2022-07-28 09:52:22 |
| Last Modify:2020-03-17 14:26:38 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Slow path to release a rt-mutex.* Return whether the current task needs to call rt_mutex_postunlock().
Proto:static bool __sched rt_mutex_slowunlock(struct rt_mutex *lock, struct wake_q_head *wake_q)
Type:bool
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct rt_mutex * | lock | |
| struct wake_q_head * | wake_q |
| 1344 | raw_spin_lock_irqsave( & wait_lock, flags) |
| 1346 | debug_rt_mutex_unlock(lock) |
| 1379 | When Not rt_mutex_has_waiters(lock) cycle |
| 1381 | If (Safe fastpath aware unlock:* 1) Clear the waiters bit* 2) Drop lock->wait_lock* 3) Try to unlock the lock with cmpxchg == true) Then Return false |
| 1384 | raw_spin_lock_irqsave( & wait_lock, flags) |
| 1394 | raw_spin_unlock_irqrestore( & wait_lock, flags) |
| 1396 | Return true |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |