函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\signal.c Create Date:2022-07-27 10:16:39
Last Modify:2020-03-17 13:28:47 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:do_signal_stop - handle group stop for SIGSTOP and other stop signals*@signr: signr causing group stop if initiating* If %JOBCTL_STOP_PENDING is not set yet, initiate group stop with @signr* and participate in it

函数原型:static bool do_signal_stop(int signr)__releases(&get_current()->sighand->siglock)

返回类型:bool

参数:

类型参数名称
intsignr
2302  sig等于signal
2304  如果非jobctl按位与JOBCTL_STOP_PENDING的值则
2305  gstop等于JOBCTL_STOP_PENDING按位或JOBCTL_STOP_CONSUME
2309  WARN_ON_ONCE(signr & ~signr of the last group stop )
2311  如果非此条件成立可能性大(为编译器优化)(jobctl & JOBCTL_STOP_DEQUEUED)或此条件成立可能性小(为编译器优化)(If true, all threads except ->group_exit_task have pending SIGKILL )则返回:false
2333  如果非see SIGNAL_* flags below 按位与job control stop in effect 的值则hread group exit support 等于signr
2336  hread group stop support, overloads group_exit_code too 等于0
2338  如果ask_set_jobctl_pending - set jobctl pending bits*@task: target task*@mask: pending bits to set* Clear @mask from @task->jobctl. @mask must be subset of* %JOBCTL_PENDING_MASK | %JOBCTL_STOP_CONSUME | %JOBCTL_STOP_SIGMASK |* %JOBCTL_TRAPPINGhread group stop support, overloads group_exit_code too 自加
2341  t等于当前进程
2359  如果此条件成立可能性大(为编译器优化)(!ptrace)则
2360  notify等于0
2367  如果ask_participate_group_stop - participate in a group stop*@task: task participating in a group stop*@task has %JOBCTL_STOP_PENDING set and is participating in a group stop.* Group stop states are cleared and the group stop count is consumed ifnotify等于child has stopped
2370  set_special_state() should be used for those states when the blocking task* can not use the regular condition based wait-loop. In that case we must* serialize against wakeups such that any possible in-flight TASK_RUNNING stores(TASK_STOPPED)
2371  spin_unlock_irq( & siglock)
2382  如果notify
2389  cgroup_enter_frozen()
2390  freezable_schedule()
2391  返回:true
2392  否则
2397  ask_set_jobctl_pending - set jobctl pending bits*@task: target task*@mask: pending bits to set* Clear @mask from @task->jobctl. @mask must be subset of* %JOBCTL_PENDING_MASK | %JOBCTL_STOP_CONSUME | %JOBCTL_STOP_SIGMASK |* %JOBCTL_TRAPPING
2398  返回:false
调用者
名称描述
get_signal