Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\lib\insn-eval.c Create Date:2022-07-28 07:25:36
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:get_seg_base_limit() - obtain base address and limit of a segment*@insn: Instruction

Proto:static int get_seg_base_limit(struct insn *insn, struct pt_regs *regs, int regoff, unsigned long *base, unsigned long *limit)

Type:int

Parameter:

TypeParameterName
struct insn *insn
struct pt_regs *regs
intregoff
unsigned long *base
unsigned long *limit
835  If Not base Then Return -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  If seg_reg_idx < 0 Then Return seg_reg_idx
842  base = sn_get_seg_base() - Obtain base address of segment descriptor
843  If base == -1L Then Return -EINVAL
846  If Not limit Then Return 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  If Not limit Then Return -EINVAL
853  Return 0
Caller
NameDescribe
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