Function report |
Source Code:kernel\futex.c |
Create Date:2022-07-28 10:54:04 |
| Last Modify:2020-03-17 15:28:32 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Wake up all waiters hashed on the physical page that is mapped* to this virtual address:
Proto:static int futex_wake_op(unsigned int __user *uaddr1, unsigned int flags, unsigned int __user *uaddr2, int nr_wake, int nr_wake2, int op)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| unsigned int __user * | uaddr1 | |
| unsigned int | flags | |
| unsigned int __user * | uaddr2 | |
| int | nr_wake | |
| int | nr_wake2 | |
| int | op |
| 1759 | key1 = FUTEX_KEY_INIT , key2 = FUTEX_KEY_INIT |
| 1765 | retry : |
| 1767 | If Value for the false possibility is greater at compile time(ret != 0) Then Go to out |
| 1770 | If Value for the false possibility is greater at compile time(ret != 0) Then Go to out_put_key1 |
| 1776 | retry_private : |
| 1778 | op_ret = futex_atomic_op_inuser(op, uaddr2) |
| 1779 | If Value for the false possibility is greater at compile time(op_ret < 0) Then |
| 1780 | double_unlock_hb(hb1, hb2) |
| 1789 | Go to out_put_keys |
| 1794 | If ret Then Go to out_put_keys |
| 1798 | If Not (flags & Futex flags used to encode options to functions and preserve them across* restarts.) Then |
| 1799 | cond_resched() |
| 1800 | Go to retry_private |
| 1803 | put_futex_key( & key2) |
| 1804 | put_futex_key( & key1) |
| 1805 | cond_resched() |
| 1806 | Go to retry |
| 1813 | Go to out_unlock |
| 1821 | If op_ret > 0 Then |
| 1837 | out_unlock : |
| 1838 | double_unlock_hb(hb1, hb2) |
| 1840 | out_put_keys : |
| 1841 | put_futex_key( & key2) |
| 1842 | out_put_key1 : |
| 1843 | put_futex_key( & key1) |
| 1844 | out : |
| 1845 | Return ret |
| Name | Describe |
|---|---|
| do_futex |
| 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 |