Function report |
Source Code:kernel\futex.c |
Create Date:2022-07-28 10:53:32 |
| Last Modify:2020-03-17 15:28:32 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:ault_in_user_writeable() - Fault in user address and verify RW access*@uaddr: pointer to faulting user space address* Slow path to fixup the fault we just took in the atomic write* access to @uaddr
Proto:static int fault_in_user_writeable(unsigned int __user *uaddr)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| unsigned int __user * | uaddr |
| 756 | lock for reading |
| 757 | ret = fixup_user_fault(current process, mm, (unsignedlong)uaddr, Fault was a write access , NULL) |
| Name | Describe |
|---|---|
| futex_wake_op | Wake up all waiters hashed on the physical page that is mapped* to this virtual address: |
| futex_requeue | ex_requeue() - Requeue waiters from uaddr1 to uaddr2*@uaddr1: source futex user address*@flags: futex flags (FLAGS_SHARED, etc |
| fixup_pi_state_owner | |
| 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_unlock_pi | Userspace attempted a TID -> 0 atomic transition, and failed.* This is the in-kernel slowpath: we look up the PI state (if any),* and do the rt-mutex unlock. |
| handle_futex_death | Process a futex-list entry, check whether it's owned by the* dying task, and do notification if so: |
| 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 |