函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:get_seg_base_limit() - obtain base address and limit of a segment*@insn: Instruction

函数原型:static int get_seg_base_limit(struct insn *insn, struct pt_regs *regs, int regoff, unsigned long *base, unsigned long *limit)

返回类型:int

参数:

类型参数名称
struct insn *insn
struct pt_regs *regs
intregoff
unsigned long *base
unsigned long *limit
835  如果非base则返回:负EINVAL
838  seg_reg_idx等于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
839  如果seg_reg_idx小于0则返回:seg_reg_idx
842  base等于sn_get_seg_base() - Obtain base address of segment descriptor
843  如果base恒等于负1L则返回:负EINVAL
846  如果非limit则返回:0
849  limit等于get_seg_limit() - Obtain the limit of a segment descriptor*@regs: Register values as seen when entering kernel mode*@seg_reg_idx: Index of the segment register pointing to seg descriptor* Obtain the limit of the segment as indicated by the segment
850  如果非limit则返回:负EINVAL
853  返回:0
调用者
名称描述
get_addr_ref_16get_addr_ref_16() - Obtain the 16-bit address referred by instruction*@insn: Instruction containing ModRM byte and displacement*@regs: Register values as seen when entering kernel mode* This function is to be used with 16-bit address encodings
get_addr_ref_32get_addr_ref_32() - Obtain a 32-bit linear address*@insn: Instruction with ModRM, SIB bytes and displacement*@regs: Register values as seen when entering kernel mode* This function is to be used with 32-bit address encodings to obtain the* linear memory
get_addr_ref_64