函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:do_general_protection

函数原型:__attribute__((__externally_visible__)) void do_general_protection(struct pt_regs *regs, long error_code)

返回类型:void

参数:

类型参数名称
struct pt_regs *regs
longerror_code
524  desc等于"general protection fault"
527  RCU_LOCKDEP_WARN(!_is_watching - see if RCU thinks that the current CPU is not idle* Return true if RCU is watching the running CPU, which means that this* CPU can safely enter RCU read-side critical sections, "entry code didn't wake RCU")
528  cond_local_irq_enable(regs)
530  如果static_cpu_has(User Mode Instruction Protection )则
531  如果ser_mode(regs) determines whether a register set came from user* modefixup_umip_exception(regs)则返回
535  如果v8086_mode(regs)则
536  开中断()
538  返回
541  tsk等于当前进程
542  如果非ser_mode(regs) determines whether a register set came from user* mode
543  如果fixup_exception(regs, X86_TRAP_GP, error_code, 0)则返回
546  error_code等于error_code
547  trap_nr等于X86_TRAP_GP
554  如果非preemptible()且kprobe_running() will just return the current_kprobe on this CPU kprobe_fault_handler(regs, X86_TRAP_GP)则返回
558  如果notify_die(DIE_GPF, desc, regs, error_code, X86_TRAP_GP, SIGSEGV)不等于Clean way to return from the notifier and stop further calls.终止程序
561  返回
564  error_code等于error_code
565  trap_nr等于X86_TRAP_GP
567  show_signal(tsk, SIGSEGV, "", desc, regs, error_code)
569  force_sig(SIGSEGV)