mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-10 15:58:47 +00:00
x86/prctl: Remove pointless task argument
The functions invoked via do_arch_prctl_common() can only operate on the current task and none of these function uses the task argument. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Borislav Petkov <bp@suse.de> Link: https://lore.kernel.org/r/87lev7vtxj.ffs@tglx
This commit is contained in:
parent
1ff2fb982c
commit
f5c0b4f304
@ -162,7 +162,6 @@ static inline bool fpstate_is_confidential(struct fpu_guest *gfpu)
|
||||
}
|
||||
|
||||
/* prctl */
|
||||
struct task_struct;
|
||||
extern long fpu_xstate_prctl(struct task_struct *tsk, int option, unsigned long arg2);
|
||||
extern long fpu_xstate_prctl(int option, unsigned long arg2);
|
||||
|
||||
#endif /* _ASM_X86_FPU_API_H */
|
||||
|
@ -39,7 +39,6 @@ void x86_report_nx(void);
|
||||
|
||||
extern int reboot_force;
|
||||
|
||||
long do_arch_prctl_common(struct task_struct *task, int option,
|
||||
unsigned long arg2);
|
||||
long do_arch_prctl_common(int option, unsigned long arg2);
|
||||
|
||||
#endif /* _ASM_X86_PROTO_H */
|
||||
|
@ -1687,16 +1687,13 @@ EXPORT_SYMBOL_GPL(xstate_get_guest_group_perm);
|
||||
* e.g. for AMX which requires XFEATURE_XTILE_CFG(17) and
|
||||
* XFEATURE_XTILE_DATA(18) this would be XFEATURE_XTILE_DATA(18).
|
||||
*/
|
||||
long fpu_xstate_prctl(struct task_struct *tsk, int option, unsigned long arg2)
|
||||
long fpu_xstate_prctl(int option, unsigned long arg2)
|
||||
{
|
||||
u64 __user *uptr = (u64 __user *)arg2;
|
||||
u64 permitted, supported;
|
||||
unsigned long idx = arg2;
|
||||
bool guest = false;
|
||||
|
||||
if (tsk != current)
|
||||
return -EPERM;
|
||||
|
||||
switch (option) {
|
||||
case ARCH_GET_XCOMP_SUPP:
|
||||
supported = fpu_user_cfg.max_features | fpu_user_cfg.legacy_features;
|
||||
|
@ -334,7 +334,7 @@ static int get_cpuid_mode(void)
|
||||
return !test_thread_flag(TIF_NOCPUID);
|
||||
}
|
||||
|
||||
static int set_cpuid_mode(struct task_struct *task, unsigned long cpuid_enabled)
|
||||
static int set_cpuid_mode(unsigned long cpuid_enabled)
|
||||
{
|
||||
if (!boot_cpu_has(X86_FEATURE_CPUID_FAULT))
|
||||
return -ENODEV;
|
||||
@ -985,20 +985,19 @@ unsigned long __get_wchan(struct task_struct *p)
|
||||
return addr;
|
||||
}
|
||||
|
||||
long do_arch_prctl_common(struct task_struct *task, int option,
|
||||
unsigned long arg2)
|
||||
long do_arch_prctl_common(int option, unsigned long arg2)
|
||||
{
|
||||
switch (option) {
|
||||
case ARCH_GET_CPUID:
|
||||
return get_cpuid_mode();
|
||||
case ARCH_SET_CPUID:
|
||||
return set_cpuid_mode(task, arg2);
|
||||
return set_cpuid_mode(arg2);
|
||||
case ARCH_GET_XCOMP_SUPP:
|
||||
case ARCH_GET_XCOMP_PERM:
|
||||
case ARCH_REQ_XCOMP_PERM:
|
||||
case ARCH_GET_XCOMP_GUEST_PERM:
|
||||
case ARCH_REQ_XCOMP_GUEST_PERM:
|
||||
return fpu_xstate_prctl(task, option, arg2);
|
||||
return fpu_xstate_prctl(option, arg2);
|
||||
}
|
||||
|
||||
return -EINVAL;
|
||||
|
@ -222,5 +222,5 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
|
||||
|
||||
SYSCALL_DEFINE2(arch_prctl, int, option, unsigned long, arg2)
|
||||
{
|
||||
return do_arch_prctl_common(current, option, arg2);
|
||||
return do_arch_prctl_common(option, arg2);
|
||||
}
|
||||
|
@ -844,7 +844,7 @@ SYSCALL_DEFINE2(arch_prctl, int, option, unsigned long, arg2)
|
||||
|
||||
ret = do_arch_prctl_64(current, option, arg2);
|
||||
if (ret == -EINVAL)
|
||||
ret = do_arch_prctl_common(current, option, arg2);
|
||||
ret = do_arch_prctl_common(option, arg2);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@ -852,7 +852,7 @@ SYSCALL_DEFINE2(arch_prctl, int, option, unsigned long, arg2)
|
||||
#ifdef CONFIG_IA32_EMULATION
|
||||
COMPAT_SYSCALL_DEFINE2(arch_prctl, int, option, unsigned long, arg2)
|
||||
{
|
||||
return do_arch_prctl_common(current, option, arg2);
|
||||
return do_arch_prctl_common(option, arg2);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user