函数逻辑报告 |
Source Code:kernel\events\uprobes.c |
Create Date:2022-07-27 15:08:13 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Run handler and ask thread to singlestep.* Ensure all non-fatal signals cannot interrupt thread while it singlesteps.
函数原型:static void handle_swbp(struct pt_regs *regs)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct pt_regs * | regs |
2193 | 如果bp_vaddr恒等于Current area->vaddr notion assume the trampoline address is always* equal area->vaddr.* Returns -1 in case the xol_area is not allocated.则返回:handle_trampoline(regs) |
2196 | uprobe等于find_active_uprobe(bp_vaddr, & is_swbp) |
2197 | 如果非uprobe则 |
2216 | instruction_pointer_set(regs, bp_vaddr) |
2223 | 如果此条件成立可能性小(为编译器优化)(!test_bit(Have a copy of original instruction , & flags))则转到:out |
2233 | smp_rmb() |
2236 | 如果非Allocate a uprobe_task object for the task if if necessary.* Called when the thread hits a breakpoint.* Returns:* - pointer to new uprobe_task on success* - NULL otherwise则转到:out |
2242 | handler_chain(uprobe, regs) |
2251 | out : |
2252 | put_uprobe(uprobe) |
名称 | 描述 |
---|---|
uprobe_notify_resume | On breakpoint hit, breakpoint notifier sets the TIF_UPROBE flag and* allows the thread to return from interrupt. After that handle_swbp()* sets utask->active_uprobe.* On singlestep exception, singlestep notifier sets the TIF_UPROBE flag |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |