x86/fpu/xstate: Rename validate_xstate_header() to validate_user_xstate_header()
authorFenghua Yu <fenghua.yu@intel.com>
Tue, 12 May 2020 14:54:35 +0000 (07:54 -0700)
committerBorislav Petkov <bp@suse.de>
Tue, 12 May 2020 18:20:32 +0000 (20:20 +0200)
The function validate_xstate_header() validates an xstate header coming
from userspace (PTRACE or sigreturn). To make it clear, rename it to
validate_user_xstate_header().

Suggested-by: Dave Hansen <dave.hansen@intel.com>
Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Reviewed-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20200512145444.15483-2-yu-cheng.yu@intel.com
arch/x86/include/asm/fpu/xstate.h
arch/x86/kernel/fpu/regset.c
arch/x86/kernel/fpu/signal.c
arch/x86/kernel/fpu/xstate.c

index c6136d7..fc4db51 100644 (file)
@@ -56,6 +56,6 @@ int copy_kernel_to_xstate(struct xregs_state *xsave, const void *kbuf);
 int copy_user_to_xstate(struct xregs_state *xsave, const void __user *ubuf);
 
 /* Validate an xstate header supplied by userspace (ptrace or sigreturn) */
-extern int validate_xstate_header(const struct xstate_header *hdr);
+int validate_user_xstate_header(const struct xstate_header *hdr);
 
 #endif
index d652b93..bd1d064 100644 (file)
@@ -139,7 +139,7 @@ int xstateregs_set(struct task_struct *target, const struct user_regset *regset,
        } else {
                ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf, xsave, 0, -1);
                if (!ret)
-                       ret = validate_xstate_header(&xsave->header);
+                       ret = validate_user_xstate_header(&xsave->header);
        }
 
        /*
index 400a05e..585e365 100644 (file)
@@ -366,7 +366,7 @@ static int __fpu__restore_sig(void __user *buf, void __user *buf_fx, int size)
                        ret = __copy_from_user(&fpu->state.xsave, buf_fx, state_size);
 
                        if (!ret && state_size > offsetof(struct xregs_state, header))
-                               ret = validate_xstate_header(&fpu->state.xsave.header);
+                               ret = validate_user_xstate_header(&fpu->state.xsave.header);
                }
                if (ret)
                        goto err_out;
index 32b153d..8ed6439 100644 (file)
@@ -472,7 +472,7 @@ int using_compacted_format(void)
 }
 
 /* Validate an xstate header supplied by userspace (ptrace or sigreturn) */
-int validate_xstate_header(const struct xstate_header *hdr)
+int validate_user_xstate_header(const struct xstate_header *hdr)
 {
        /* No unknown or supervisor features may be set */
        if (hdr->xfeatures & (~xfeatures_mask | XFEATURE_MASK_SUPERVISOR))
@@ -1147,7 +1147,7 @@ int copy_kernel_to_xstate(struct xregs_state *xsave, const void *kbuf)
 
        memcpy(&hdr, kbuf + offset, size);
 
-       if (validate_xstate_header(&hdr))
+       if (validate_user_xstate_header(&hdr))
                return -EINVAL;
 
        for (i = 0; i < XFEATURE_MAX; i++) {
@@ -1201,7 +1201,7 @@ int copy_user_to_xstate(struct xregs_state *xsave, const void __user *ubuf)
        if (__copy_from_user(&hdr, ubuf + offset, size))
                return -EFAULT;
 
-       if (validate_xstate_header(&hdr))
+       if (validate_user_xstate_header(&hdr))
                return -EINVAL;
 
        for (i = 0; i < XFEATURE_MAX; i++) {