函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:sn_get_seg_base() - Obtain base address of segment descriptor

函数原型:unsigned long insn_get_seg_base(struct pt_regs *regs, int seg_reg_idx)

返回类型:unsigned long

参数:

类型参数名称
struct pt_regs *regs
intseg_reg_idx
638  sel等于get_segment_selector() - obtain segment selector*@regs: Register values as seen when entering kernel mode*@seg_reg_idx: Segment register index to use* Obtain the segment selector from any of the CS, SS, DS, ES, FS, GS segment* registers
639  如果sel小于0则返回:负1L
642  如果v8086_mode(regs)则返回:sel左移4位
649  如果user_64bit_mode(regs)则
656  如果seg_reg_idx恒等于INAT_SEG_REG_FSrdmsrl(64bit FS base , base)
658  否则如果seg_reg_idx恒等于INAT_SEG_REG_GSrdmsrl(SwapGS GS shadow , base)
664  否则base等于0
666  返回:base
670  如果非sel则返回:负1L
673  如果非get_desc() - Obtain contents of a segment descriptor*@out: Segment descriptor contents on success*@sel: Segment selector* Given a segment selector, obtain a pointer to the segment descriptor则返回:负1L
676  返回:get_desc_base( & desc)
调用者
名称描述
get_seg_base_limitget_seg_base_limit() - obtain base address and limit of a segment*@insn: Instruction
fixup_umip_exceptionxup_umip_exception() - Fixup a general protection fault caused by UMIP*@regs: Registers as saved when entering the #GP handler* The instructions SGDT, SIDT, STR, SMSW and SLDT cause a general protection* fault if executed with CPL > 0 (i