函数逻辑报告 |
Source Code:arch\x86\kernel\umip.c |
Create Date:2022-07-27 09:49:49 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:mulate_umip_insn() - Emulate UMIP instructions and return dummy values*@insn: Instruction structure with operands*@umip_inst: A constant indicating the instruction to emulate*@data: Buffer into which the dummy result is stored*@data_size: Size of the
函数原型:static int emulate_umip_insn(struct insn *insn, int umip_inst, unsigned char *data, int *data_size, bool x86_64)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct insn * | insn | |
| int | umip_inst | |
| unsigned char * | data | |
| int * | data_size | |
| bool | x86_64 |
| 220 | dummy_limit等于0 |
| 223 | 如果X86_MODRM_MOD(value)恒等于3则返回:负EINVAL |
| 242 | memcpy(data + 2, & dummy_base_addr, * data_size) |
| 245 | memcpy(data, & dummy_limit, UMIP_GDT_IDT_LIMIT_SIZE) |
| 248 | dummy_value等于CR0_STATE |
| 258 | 如果X86_MODRM_MOD(value)恒等于3则data_size等于opnd_bytes |
| 260 | 否则data_size等于2 |
| 263 | memcpy(data, & dummy_value, * data_size) |
| 265 | 否则 |
| 266 | 返回:负EINVAL |
| 269 | 返回:0 |
| 名称 | 描述 |
|---|---|
| fixup_umip_exception | xup_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 |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |