函数逻辑报告 |
Source Code:kernel\signal.c |
Create Date:2022-07-27 10:18:11 |
Last Modify:2020-03-17 13:28:47 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:kdb_send_sig - Allows kdb to send signals without exposing* signal internals. This function checks if the required locks are* available before calling the main signal code, to avoid kdb* deadlocks.
函数原型:void kdb_send_sig(struct task_struct *t, int sig)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct task_struct * | t | |
int | sig |
4589 | 如果非spin_trylock( & siglock)则 |
4590 | kdb_printf("Can't do kill command now.\nThe sigmask lock is held somewhere else in kernel, try again later\n") |
4593 | 返回 |
4595 | new_t等于kdb_prev_t不等于t |
4596 | kdb_prev_t等于t |
4598 | 自旋锁解锁 |
4599 | kdb_printf("Process is not RUNNING, sending a signal from kdb risks deadlock\non the run queue locks. The signal has _not_ been sent.\nReissue the kill command if you want to risk the deadlock.\n") |
4605 | 返回 |
4607 | ret等于send_signal(sig, SEND_SIG_PRIV, t, 单一进程) |
4608 | 自旋锁解锁 |
4609 | 如果ret则kdb_printf("Fail to deliver Signal %d to process %d.\n", sig, 进程ID) |
4612 | 否则kdb_printf("Signal %d is sent to process %d.\n", sig, 进程ID) |
名称 | 描述 |
---|---|
kdb_kill | kdb_kill - This function implements the 'kill' commands. |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |