Function report |
Source Code:arch\x86\kernel\uprobes.c |
Create Date:2022-07-28 08:47:30 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:If arch_uprobe->insn doesn't use rip-relative addressing, return* immediately. Otherwise, rewrite the instruction so that it accesses* its memory operand indirectly through a scratch register. Set* defparam->fixups accordingly
Proto:static void riprel_analyze(struct arch_uprobe *auprobe, struct insn *insn)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct arch_uprobe * | auprobe | |
struct insn * | insn |
348 | If nbytes Then |
351 | cursor &= 0xfe |
357 | If nbytes >= 3 Then |
368 | cursor = insn + insn_offset_vex_prefix(insn) + 1 |
369 | cursor |= 0x60 |
413 | reg2 = 0xff |
431 | reg2 = 6 |
432 | fixups |= UPROBE_FIX_RIP_SI |
434 | reg2 = 7 |
435 | fixups |= UPROBE_FIX_RIP_DI |
437 | Else |
438 | reg2 = 3 |
439 | fixups |= UPROBE_FIX_RIP_BX |
446 | cursor = insn + insn_offset_modrm(insn) |
Name | Describe |
---|---|
arch_uprobe_analyze_insn | arch_uprobe_analyze_insn - instruction analysis including validity and fixups.*@auprobe: the probepoint information.*@mm: the probed address space.*@addr: virtual address at which to install the probepoint* Return 0 on success or a -ve number on error. |
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 |