函数逻辑报告 |
Source Code:arch\x86\include\asm\ptrace.h |
Create Date:2022-07-27 06:38:35 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:ser_mode(regs) determines whether a register set came from user* mode
函数原型:static inline int user_mode(struct pt_regs *regs)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct pt_regs * | regs |
129 | 返回:cs按位与Bottom two bits of selector give the ring* privilege level按位或flags按位与No VM86 support 的值大于等于User mode is privilege level 3: |
名称 | 描述 |
---|---|
__show_regs | |
ist_enter | In IST context, we explicitly disable preemption. This serves two* purposes: it makes it much less likely that we would accidentally* schedule in IST context and it will force a warning if we somehow* manage to schedule by accident. |
ist_exit | |
ist_begin_non_atomic | st_begin_non_atomic() - begin a non-atomic section in an IST exception*@regs: regs passed to the IST exception handler* IST exception handlers normally cannot schedule |
do_trap_no_signal | |
do_error_trap | |
do_bounds | |
do_general_protection | |
fixup_bad_iret | |
do_debug | Our handling of the processor debug registers is non-trivial.* We do not clear them on entry and exit from the kernel. Therefore* it is possible to get a watchpoint trap here from inside the kernel.* However, the code in |
math_error | Note that we play around with the 'TS' bit in an attempt to get* the correct behaviour even in the presence of the asynchronous* IRQ13 behaviour |
handle_irq | |
profile_pc | |
show_opcodes | There are a couple of reasons for the 2/3rd prologue, courtesy of Linus:* In case where we don't have the exact kernel image (which, if we did, we can* simply disassemble and navigate to the RIP), the purpose of the bigger* prologue is to have more |
show_regs | |
do_nmi | |
int3_exception_notify | |
poke_int3_handler | |
interrupted_user_mode | Were we in user mode (or vm86 mode) when we were* interrupted?* Doing kernel_fpu_begin/end() is ok if we are running* in an interrupt context from user mode - we'll just* save the FPU state as required. |
send_sigtrap | |
arch_stack_walk_reliable | This function returns an error if it detects any unreliable features of the* stack. Otherwise it guarantees that the stack trace is reliable.* If the task is not 'current', the caller *must* ensure the task is inactive. |
kprobe_int3_handler | Interrupts are disabled on entry as trap3 is an interrupt gate and they* remain disabled throughout this function. |
__kgdb_notify | |
do_async_page_fault | |
arch_uprobe_exception_notify | allback routine for handling exceptions. |
unwind_next_frame | |
__unwind_start | |
update_stack_state | |
unwind_next_frame | |
__unwind_start | |
cpuacct_charge | harge this task's execution time to its accounting group.* called with rq->lock held. |
profile_tick | |
tick_periodic | 时钟中断处理 |
perf_sample_regs_user | |
perf_exclude_event | |
get_perf_callchain | |
kprobe_page_fault | Returns true if kprobes handled the fault |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |