函数逻辑报告 |
Source Code:kernel\exit.c |
Create Date:2022-07-27 10:02:44 |
Last Modify:2020-03-17 11:17:32 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:has_stopped_jobs
函数原型:static bool has_stopped_jobs(struct pid *pgrp)
返回类型:bool
参数:
类型 | 参数 | 名称 |
---|---|---|
struct pid * | pgrp |
304 | 循环 |
304 | typeof(({typeof(( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first))))________p1 = ({union{typeof(( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first))))__val;char __c[1];}__u;if (1)__read_once_size( & (( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first)))), __u.__c, sizeof(( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first)))));否则 __read_once_size_nocheck( & (( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first)))), __u.__c, sizeof(( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first)))));循环{}while (0);__u.__val;});((typeof( * ( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first)))) * )(________p1));}))____ptr = (({ |
304 | typeof(( * ((struct hlist_node * * )( & ( & (pgrp)->进程属性列[进程组])->first))))________p1 = ({ |
304 | union{typeof(( * ((structhlist_node * * )( & first)))) __val;char __c[1];}__u |
304 | 如果1则__read_once_size( & (( * ((structhlist_node * * )( & first)))), __c, *first的长度) |
304 | 否则__read_once_size_nocheck( & (( * ((structhlist_node * * )( & first)))), __c, *first的长度) |
304 | 循环 |
304 | 当0循环 |
304 | __val |
304 | }) |
304 | })) |
304 | ____ptr ? ({ |
304 | }) : NULL |
304 | typeof(({typeof(( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next))))________p1 = ({union{typeof(( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next))))__val;char __c[1];}__u;if (1)__read_once_size( & (( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next)))), __u.__c, sizeof(( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next)))));否则 __read_once_size_nocheck( & (( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next)))), __u.__c, sizeof(( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next)))));循环{}while (0);__u.__val;});((typeof( * ( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next)))) * )(________p1));}))____ptr = (({ |
304 | typeof(( * ((struct hlist_node * * )( & ( & ((p))->pid_links[进程组])->next))))________p1 = ({ |
304 | union{typeof(( * ((structhlist_node * * )( & next)))) __val;char __c[1];}__u |
304 | 如果1则__read_once_size( & (( * ((structhlist_node * * )( & next)))), __c, *next的长度) |
304 | 否则__read_once_size_nocheck( & (( * ((structhlist_node * * )( & next)))), __c, *next的长度) |
304 | 循环 |
304 | 当0循环 |
304 | __val |
304 | }) |
304 | })) |
304 | ____ptr ? ({ |
304 | }) : NULL |
304 | })) |
305 | 如果任务标志按位与job control stop in effect 则返回:true |
307 | 当0循环 |
309 | 返回:false |
名称 | 描述 |
---|---|
kill_orphaned_pgrp | 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) |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |