函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\lib\insn-eval.c Create Date:2022-07-27 08:24:29
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:solve_seg_reg() - obtain segment register index*@insn: Instruction with operands*@regs: Register values as seen when entering kernel mode*@regoff: Operand offset, in pt_regs, used to deterimine segment register* Determine the segment register associated

函数原型:static int resolve_seg_reg(struct insn *insn, struct pt_regs *regs, int regoff)

返回类型:int

参数:

类型参数名称
struct insn *insn
struct pt_regs *regs
intregoff
268  如果regoff恒等于offsetof(structpt_regs, ip)则
269  如果user_64bit_mode(regs)则返回:Identifiers for segment registers
271  否则返回:INAT_SEG_REG_CS
275  如果非insn则返回:负EINVAL
278  如果非heck_seg_overrides() - check if segment override prefixes are allowed*@insn: Valid instruction with segment override prefixes*@regoff: Operand offset, in pt_regs, for which the check is performed* For a particular register used in register-indirect 则返回:solve_default_seg() - resolve default segment register index for an operand*@insn: Instruction with opcode and address size
281  idx等于get_seg_reg_override_idx() - obtain segment register override index*@insn: Valid instruction with segment override prefixes* Inspect the instruction prefixes in @insn and find segment overrides, if any
282  如果idx小于0则返回:idx
285  如果idx恒等于INAT_SEG_REG_DEFAULT则返回:solve_default_seg() - resolve default segment register index for an operand*@insn: Instruction with opcode and address size
292  如果user_64bit_mode(regs)则
293  如果idx不等于INAT_SEG_REG_FSidx不等于INAT_SEG_REG_GSidx等于Identifiers for segment registers
298  返回:idx
调用者
名称描述
get_seg_base_limitget_seg_base_limit() - obtain base address and limit of a segment*@insn: Instruction