| Function report | 
| Source Code: kernel\locking\rtmutex.c | Create Date:2022-07-28 09:52:33 | 
| Last Modify:2020-03-17 14:26:38 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:_mutex_cleanup_proxy_lock() - Cleanup failed lock acquisition*@lock: the rt_mutex we were woken on*@waiter: the pre-initialized rt_mutex_waiter* Attempt to clean up after a failed __rt_mutex_start_proxy_lock() or* rt_mutex_wait_proxy_lock()
Proto:bool rt_mutex_cleanup_proxy_lock(struct rt_mutex *lock, struct rt_mutex_waiter *waiter)
Type:bool
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct rt_mutex * | lock | |
| struct rt_mutex_waiter * | waiter | 
| 1891 | bool cleanup = false | 
| 1893 | raw_spin_lock_irq( & wait_lock) | 
| 1910 | If rt_mutex_owner(lock) != current process Then | 
| 1912 | cleanup = true | 
| 1918 | fixup_rt_mutex_waiters(lock) | 
| 1920 | raw_spin_unlock_irq( & wait_lock) | 
| 1922 | Return cleanup | 
| Name | Describe | 
|---|---|
| futex_lock_pi | Userspace tried a 0 -> TID atomic transition of the futex value* and failed. The kernel side here does the whole locking operation:* if there are waiters then it will block as a consequence of relying* on rt-mutexes, it does PI, etc | 
| futex_wait_requeue_pi | ex_wait_requeue_pi() - Wait on uaddr and take uaddr2*@uaddr: the futex we initially wait on (non-pi)*@flags: futex flags (FLAGS_SHARED, FLAGS_CLOCKRT, etc | 
| 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 |