Function report |
Source Code:arch\x86\kernel\kprobes\core.c |
Create Date:2022-07-28 08:38:39 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:setup_singlestep
Proto:static void setup_singlestep(struct kprobe *p, struct pt_regs *regs, struct kprobe_ctlblk *kcb, int reenter)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct kprobe * | p | |
struct pt_regs * | regs | |
struct kprobe_ctlblk * | kcb | |
int | reenter |
584 | If setup_detour_execution(p, regs, reenter) Then Return |
601 | If reenter Then |
602 | save_previous_kprobe(kcb) |
603 | set_current_kprobe(p, regs, kcb) |
604 | kprobe_status = KPROBE_REENTER |
605 | Else kprobe_status = KPROBE_HIT_SS |
608 | clear_btf() |
609 | flags |= X86_EFLAGS_TF |
610 | flags &= ~X86_EFLAGS_IF |
612 | If Saved opcode (which has been replaced with breakpoint) == BREAKPOINT_INSTRUCTION Then ip = location of the probe point |
614 | Else ip = copy of the original instruction |
Name | Describe |
---|---|
reenter_kprobe | We have reentered the kprobe_handler(), since another probe was hit while* within the handler. We save the original kprobes variables and just single* step on the instruction of the new probe without calling any user handlers. |
kprobe_int3_handler | Interrupts are disabled on entry as trap3 is an interrupt gate and they* remain disabled throughout this function. |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |