Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\futex.c Create Date:2022-07-28 10:54:46
Last Modify:2020-03-17 15:28:32 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:handle_early_requeue_pi_wakeup() - Detect early wakeup on the initial futex*@hb: the hash_bucket futex_q was original enqueued on*@q: the futex_q woken while waiting to be requeued*@key2: the futex_key of the requeue target futex*@timeout: the timeout

Proto:static inline int handle_early_requeue_pi_wakeup(struct futex_hash_bucket *hb, struct futex_q *q, union futex_key *key2, struct hrtimer_sleeper *timeout)

Type:int

Parameter:

TypeParameterName
struct futex_hash_bucket *hb
struct futex_q *q
union futex_key *key2
struct hrtimer_sleeper *timeout
3227  ret = 0
3236  If Not match_futex - Check whether two futex keys are equal*@key1: Pointer to key1*@key2: Pointer to key2* Return 1 if two futex_keys are equal, 0 otherwise. Then
3237  WARN_ON(lock_ptr && ( & lock != lock_ptr))
3242  plist_del - Remove a @node from plist.*@node: &struct plist_node pointer - entry to be removed*@head: &struct plist_head pointer - list head
3243  Reflects a waiter being removed from the waitqueue by wakeup* paths.
3246  ret = -EWOULDBLOCK
3247  If timeout && Not task Then ret = -ETIMEDOUT
3249  Else if signal_pending(current process) Then ret = -ERESTARTNOINTR
3252  Return ret
Caller
NameDescribe
futex_wait_requeue_piex_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