函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称: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

函数原型:static void math_error(struct pt_regs *regs, int error_code, int trapnr)

返回类型:void

参数:

类型参数名称
struct pt_regs *regs
interror_code
inttrapnr
824  task等于当前进程
825  fpu等于 Floating point and extended processor state
827  str等于如果trapnr恒等于X86_TRAP_MF则"fpu exception"否则"simd exception"
830  cond_local_irq_enable(regs)
832  如果非ser_mode(regs) determines whether a register set came from user* mode
833  如果fixup_exception(regs, trapnr, error_code, 0)则返回
836  error_code等于error_code
837  trap_nr等于trapnr
839  如果notify_die(DIE_TRAP, str, regs, error_code, trapnr, SIGFPE)不等于Clean way to return from the notifier and stop further calls.终止程序
842  返回
848  Save the FPU state (mark it for reload if necessary):* This only ever gets called for the current task.
850  trap_nr等于trapnr
851  error_code等于error_code
853  si_code等于fpu__exception_code(fpu, trapnr)
855  如果非si_code则返回
858  force_sig_fault(SIGFPE, si_code, (void__user * )uprobe_get_trap_addr(regs))
调用者
名称描述
do_coprocessor_error
do_simd_coprocessor_error