函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\include\asm\tlbflush.h Create Date:2022-07-27 06:54:32
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Blindly accessing user memory from NMI context can be dangerous* if we're in the middle of switching the current user task or* switching the loaded mm. It can also be dangerous if we* interrupted some kernel code that was temporarily using a* different mm.

函数原型:static inline bool nmi_uaccess_okay(void)

返回类型:bool

参数:

254  loaded_mm等于Operations with implied preemption/interrupt protection. These* operations can be used without worrying about preemption or interrupt.(loaded_mm)
255  current_mm等于mm
257  VM_WARN_ON_ONCE(!loaded_mm)
269  如果loaded_mm不等于current_mm则返回:false
272  VM_WARN_ON_ONCE(pgd != __va(Friendlier CR3 helpers.))
274  返回:true
调用者
名称描述
copy_from_user_nmiWe rely on the nested NMI work to allow atomic faults from the NMI path; the* nested NMI paths are careful to preserve CR2.
____bpf_probe_write_user
____bpf_send_signal