函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:send_sigqueue

函数原型:int send_sigqueue(struct sigqueue *q, struct pid *pid, enum pid_type type)

返回类型:int

参数:

类型参数名称
struct sigqueue *q
struct pid *pid
enum pid_typetype
1843  sig等于si_signo
1849  BUG_ON(!(flags & lags values. ))
1851  ret等于负1
1852  _read_lock() - mark the beginning of an RCU read-side critical section* When synchronize_rcu() is invoked on one CPU while other CPUs* are within RCU read-side critical sections, then the* synchronize_rcu() is guaranteed to block until after all the other
1853  t等于pid_task(pid, type)
1854  如果非t或非此条件成立可能性大(为编译器优化)(lock_task_sighand(t, & flags))则转到:ret
1857  ret等于1
1858  result等于TRACE_SIGNAL_IGNORED
1859  如果非Handle magic process-wide effects of stop/continue signals则转到:out
1862  ret等于0
1863  如果此条件成立可能性小(为编译器优化)(!链表为空)则
1868  BUG_ON(si_code != sent by timer expiration )
1869  si_overrun自加
1870  result等于TRACE_SIGNAL_ALREADY_PENDING
1871  转到:out
1873  si_overrun等于0
1875  Deliver the signal to listening signalfd.
1876  pending等于如果type不等于单一进程shared_pending否则待处理信号
1877  添加链表项
1878  We don't use for these because there is no need tobe atomic.
1879  complete_signal(sig, t, type)
1880  result等于TRACE_SIGNAL_DELIVERED
1881  out :
1882  signal_generate - called when a signal is generated*@sig: signal number*@info: pointer to struct siginfo*@task: pointer to struct task_struct*@group: shared or private*@result: TRACE_SIGNAL_** Current process sends a 'sig' signal to 'task' process with
1883  unlock_task_sighand(t, & flags)
1884  ret :
1885  _read_unlock() - marks the end of an RCU read-side critical section.* In most situations, rcu_read_unlock() is immune from deadlock.* However, in kernels built with CONFIG_RCU_BOOST, rcu_read_unlock()
1886  返回:ret
调用者
名称描述
posix_timer_event