函数逻辑报告 |
Source Code:arch\x86\kernel\unwind_orc.c |
Create Date:2022-07-27 09:50:25 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:__unwind_start
函数原型:void __unwind_start(struct unwind_state *state, struct task_struct *task, struct pt_regs *regs, unsigned long *first_frame)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct unwind_state * | state | |
struct task_struct * | task | |
struct pt_regs * | regs | |
unsigned long * | first_frame |
593 | 如果task_on_another_cpu(task)则转到:done |
596 | 如果regs则 |
608 | asm volatile |
614 | 否则 |
622 | 如果get_stack_info((unsignedlong * )sp, task, & stack_info, & stack_mask)则 |
630 | next_page等于 align the pointer to the (next) page boundary ((unsignedlong)sp) |
631 | 如果get_stack_info(next_page, task, & stack_info, & stack_mask)则返回 |
643 | 如果regs则 |
644 | unwind_next_frame(state) |
645 | 返回 |
649 | 当非unwind_done(state)且非on_stack( & stack_info, first_frame, sizeof(long))或sp小于等于first_frame的值循环 |
652 | unwind_next_frame(state) |
654 | 返回 |
656 | done : |
657 | type等于STACK_TYPE_UNKNOWN |
658 | 返回 |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |