函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\sched\completion.c Create Date:2022-07-27 10:41:50
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:do_wait_for_common

函数原型:static inline long __sched do_wait_for_common(struct completion *x, long (*action)(long ), long timeout, int state)

返回类型:long

参数:

类型参数名称
struct completion *x
long (*action
longtimeout
intstate
72  如果非用于同步的原子量
73  DECLARE_WAITQUEUE(wait, 当前进程)
75  __add_wait_queue_entry_tail_exclusive( & 等待事件队列, & wait)
76  循环
83  timeout等于action(timeout)
84  spin_lock_irq( & lock)
85  当非用于同步的原子量timeout循环
86  __remove_wait_queue( & 等待事件队列, & wait)
87  如果非用于同步的原子量则返回:timeout
90  如果用于同步的原子量不等于UINT_MAX用于同步的原子量自减
92  返回:如果timeout否则1
调用者
名称描述
__wait_for_common