Re: [patch V3 60/66] x86/fpu/signal: Remove the legacy alignment check

From: Borislav Petkov
Date: Tue Jun 22 2021 - 13:40:34 EST


On Fri, Jun 18, 2021 at 04:19:23PM +0200, Thomas Gleixner wrote:
> Checking for the XSTATE buffer being 64 byte aligned and if not deciding
> just to restore the FXSR state is daft.
>
> If user space provides an unaligned math frame and has the extended state
> magic set in the FX software reserved bytes, then it really can keep the
> pieces.
>
> If the frame is unaligned and the FX software magic is not set, then
> fx_only is already set and the restore will use fxrstor.
>
> Remove it.
>
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> ---
> arch/x86/kernel/fpu/signal.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> --- a/arch/x86/kernel/fpu/signal.c
> +++ b/arch/x86/kernel/fpu/signal.c
> @@ -306,9 +306,6 @@ static int __fpu_restore_sig(void __user
> }
> }
>
> - if ((unsigned long)buf_fx % 64)
> - fx_only = 1;
> -
> if (!ia32_fxstate) {
> /*
> * Attempt to restore the FPU registers directly from user

Nice, that was really daft.

Reviewed-by: Borislav Petkov <bp@xxxxxxx>

--
Regards/Gruss,
Boris.

SUSE Software Solutions Germany GmbH, GF: Felix Imendörffer, HRB 36809, AG Nürnberg