函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\events\uprobes.c Create Date:2022-07-27 15:07:56
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Prepare to single-step probed instruction out of line.

函数原型:static int pre_ssout(struct uprobe *uprobe, struct pt_regs *regs, unsigned long bp_vaddr)

返回类型:int

参数:

类型参数名称
struct uprobe *uprobe
struct pt_regs *regs
unsigned longbp_vaddr
1936  utask等于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
1937  如果非utask则返回:负ENOMEM
1940  xol_vaddr等于xol_get_insn_slot - allocate a slot for xol.* Returns the allocated slot address or 0.
1941  如果非xol_vaddr则返回:负ENOMEM
1944  xol_vaddr等于xol_vaddr
1945  vaddr等于bp_vaddr
1947  err等于arch_uprobe_pre_xol - prepare to execute out of line.*@auprobe: the probepoint information.*@regs: reflects the saved user state of current task.
1948  如果此条件成立可能性小(为编译器优化)(err)则
1949  xol_free_insn_slot - If slot was earlier allocated by*@xol_get_insn_slot(), make the slot available for* subsequent requests.
1950  返回:err
1953  active_uprobe等于uprobe
1954  state等于UTASK_SSTEP
1955  返回:0
调用者
名称描述
handle_swbpRun handler and ask thread to singlestep.* Ensure all non-fatal signals cannot interrupt thread while it singlesteps.