函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Given an xstate feature nr, calculate where in the xsave* buffer the state is. Callers should ensure that the buffer* is valid.

函数原型:static void *__raw_xsave_addr(struct xregs_state *xsave, int xfeature_nr)

返回类型:void

参数:

类型参数名称
struct xregs_state *xsave
intxfeature_nr
812  如果非Note that in the future we will likely need a pair of* functions here: one for user xstates and the other for* system xstates. For now, they are the same.
813  WARN_ON_FPU(1)
814  返回:NULL
817  返回:xsavexstate_comp_offsets[xfeature_nr]
调用者
名称描述
get_xsave_addrGiven the xsave area and a state inside, this function returns the* address of the state
copy_xstate_to_kernelConvert from kernel XSAVES compacted format to standard format and copy* to a kernel-space ptrace buffer.* It supports partial copy but pos always starts from zero. This is called* from xstateregs_get() and there we check the CPU has XSAVES.
copy_xstate_to_userConvert from kernel XSAVES compacted format to standard format and copy* to a user-space buffer. It supports partial copy but pos always starts from* zero. This is called from xstateregs_get() and there we check the CPU* has XSAVES.
copy_kernel_to_xstateConvert from a ptrace standard-format kernel buffer to kernel XSAVES format* and copy to the target thread. This is called from xstateregs_set().
copy_user_to_xstateConvert from a ptrace or sigreturn standard-format user-space buffer to* kernel XSAVES format and copy to the target thread. This is called from* xstateregs_set(), as well as potentially from the sigreturn() and* rt_sigreturn() system calls.