函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\futex.c Create Date:2022-07-27 11:53:42
Last Modify:2020-03-17 15:28:32 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:wait_for_owner_exiting - Block until the owner has exited*@ret: owner's current futex lock status*@exiting: Pointer to the exiting task* Caller must hold a refcount on @exiting.

函数原型:static void wait_for_owner_exiting(int ret, struct task_struct *exiting)

返回类型:void

参数:

类型参数名称
intret
struct task_struct *exiting
1188  如果ret不等于负EBUSY
1189  WARN_ON_ONCE(exiting)
1190  返回
1193  如果WARN_ON_ONCE(ret == - EBUSY && !exiting)则返回
1196  mutex_lock( & futex_exit_mutex)
1205  mutex_unlock - release the mutex*@lock: the mutex to be released* Unlock a mutex that has been locked by this task previously.* This function must not be used in interrupt context. Unlocking* of a not locked mutex is not allowed.
1207  put_task_struct(exiting)
调用者
名称描述
futex_requeueex_requeue() - Requeue waiters from uaddr1 to uaddr2*@uaddr1: source futex user address*@flags: futex flags (FLAGS_SHARED, etc
futex_lock_piUserspace 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