[PATCH v3 1/7] arm64/signal: Don't redundantly verify FPSIMD magic

From: Mark Brown
Date: Tue Jan 31 2023 - 17:21:00 EST


We validate that the magic in the struct fpsimd_context is correct in
restore_fpsimd_context() but this is redundant since parse_user_sigframe()
uses this magic to decide to call the function in the first place. Remove
the extra validation.

Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
---
arch/arm64/kernel/signal.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/kernel/signal.c b/arch/arm64/kernel/signal.c
index ed692284f199..882f6d913508 100644
--- a/arch/arm64/kernel/signal.c
+++ b/arch/arm64/kernel/signal.c
@@ -191,15 +191,14 @@ static int preserve_fpsimd_context(struct fpsimd_context __user *ctx)
static int restore_fpsimd_context(struct fpsimd_context __user *ctx)
{
struct user_fpsimd_state fpsimd;
- __u32 magic, size;
+ __u32 size;
int err = 0;

- /* check the magic/size information */
- __get_user_error(magic, &ctx->head.magic, err);
+ /* check the size information */
__get_user_error(size, &ctx->head.size, err);
if (err)
return -EFAULT;
- if (magic != FPSIMD_MAGIC || size != sizeof(struct fpsimd_context))
+ if (size != sizeof(struct fpsimd_context))
return -EINVAL;

/* copy the FP and status/control registers */

--
2.30.2