函数逻辑报告 |
Source Code:kernel\signal.c |
Create Date:2022-07-27 10:16:36 |
Last Modify:2020-03-17 13:28:47 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:This must be called with current->sighand->siglock held.* This should be the path for all ptrace stops.* We always set current->last_siginfo while stopped here.* That makes it a way to test a stopped process for
函数原型:static void ptrace_stop(int exit_code, int why, int clear_code, kernel_siginfo_t *info)__releases(&get_current()->sighand->siglock) __acquires(&get_current()->sighand->siglock)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
int | exit_code | |
int | why | |
int | clear_code | |
kernel_siginfo_t * | info |
2119 | bool gstop_done = false |
2133 | spin_unlock_irq( & siglock) |
2135 | spin_lock_irq( & siglock) |
2160 | smp_wmb() |
2162 | last_siginfo等于info |
2183 | spin_unlock_irq( & siglock) |
2184 | read_lock( & tasklist_lock) |
2185 | 如果may_ptrace_stop()则 |
2206 | 禁止抢占() |
2207 | read_unlock( & tasklist_lock) |
2208 | cgroup_enter_frozen() |
2209 | preempt_enable_no_resched() |
2210 | freezable_schedule() |
2211 | cgroup_leave_frozen(true) |
2212 | 否则 |
2228 | 如果clear_code则exit_code等于0 |
2230 | read_unlock( & tasklist_lock) |
2238 | spin_lock_irq( & siglock) |
2239 | last_siginfo = NULL |
2242 | jobctl与等于JOBCTL_LISTENING的反 |
2249 | recalc_sigpending_tsk(当前进程) |
名称 | 描述 |
---|---|
ptrace_do_notify | |
do_jobctl_trap | do_jobctl_trap - take care of ptrace jobctl traps* When PT_SEIZED, it's used for both group stop and explicit* SEIZE/INTERRUPT traps. Both generate PTRACE_EVENT_STOP trap with* accompanying siginfo. If stopped, lower eight bits of exit_code contain |
ptrace_signal |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |