函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:find_child_reaper

函数原型:static struct task_struct *find_child_reaper(struct task_struct *father, struct list_head *dead)__releases(&tasklist_lock) __acquires(&tasklist_lock)

返回类型:struct task_struct

参数:

类型参数名称
struct task_struct *father
struct list_head *dead
506  pid_ns等于task_active_pid_ns(father)
507  reaper等于子进程回收器
510  如果此条件成立可能性大(为编译器优化)(reaper != father)则返回:reaper
513  reaper等于find_alive_thread(father)
514  如果reaper
515  子进程回收器等于reaper
516  返回:reaper
519  write_unlock_irq( & tasklist_lock)
522  删除链表项并重新初始化
523  release_task(p)
526  zap_pid_ns_processes(pid_ns)
527  write_lock_irq( & tasklist_lock)
529  返回:father
调用者
名称描述
forget_original_parentThis does two things:* A. Make init inherit all the child processes* B. Check to see if any process groups have become orphaned* as a result of our exiting, and if they have any stopped* jobs, send them a SIGHUP and then a SIGCONT. (POSIX 3.2.2.2)