Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:Walk curr->robust_list (very carefully, it's a userspace list!)* and mark any locks found there dead, and notify any waiters.* We silently return on any sign of list-walking problem.

Proto:static void exit_robust_list(struct task_struct *curr)

Type:void

Parameter:

TypeParameterName
struct task_struct *curr
3680  __user * head = robust_list
3681  __user * entry
3682  limit = This limit protects against a deliberately circular list.* (Not worth introducing an rlimit for it)
3683  next_pi = next_pi
3687  If Not futex_cmpxchg_enabled Then Return
3694  If Fetch a robust-list pointer. Bit 0 signals PI futexes: Then Return
3699  If Get a simple variable from user space(futex_offset, & This relative offset is set by user-space, it gives the kernel* the relative position of the futex field to examine. This way* we keep userspace flexible, to freely shape its data-structure,* without hardcoding any particular offset into the kernel:) Then Return
3705  If Fetch a robust-list pointer. Bit 0 signals PI futexes: Then Return
3708  next_entry = NULL
3709  When entry != The head of the list. Points back to itself if empty: cycle
3714  rc = Fetch a robust-list pointer. Bit 0 signals PI futexes:
3719  If entry != pending Then
3724  If rc Then Return
3726  entry = next_entry
3727  pi = next_pi
3731  If Not --limit Then Break
3734  cond_resched()
3737  If pending Then
3738  Process a futex-list entry, check whether it's owned by the* dying task, and do notification if so:
Caller
NameDescribe
futex_cleanup