[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 63/71] linux-user/aarch64: Do not allow duplicate or short sve re
From: |
Richard Henderson |
Subject: |
[PATCH 63/71] linux-user/aarch64: Do not allow duplicate or short sve records |
Date: |
Thu, 2 Jun 2022 14:48:45 -0700 |
In parse_user_sigframe, the kernel rejects duplicate sve records,
or records that are smaller than the header. We were silently
allowing these cases to pass, dropping the record.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
linux-user/aarch64/signal.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/linux-user/aarch64/signal.c b/linux-user/aarch64/signal.c
index e9ff280d2a..590f2258b2 100644
--- a/linux-user/aarch64/signal.c
+++ b/linux-user/aarch64/signal.c
@@ -318,10 +318,13 @@ static int target_restore_sigframe(CPUARMState *env,
break;
case TARGET_SVE_MAGIC:
+ if (sve || size < sizeof(struct target_sve_context)) {
+ goto err;
+ }
if (cpu_isar_feature(aa64_sve, env_archcpu(env))) {
vq = sve_vq_cached(env);
sve_size = QEMU_ALIGN_UP(TARGET_SVE_SIG_CONTEXT_SIZE(vq), 16);
- if (!sve && size == sve_size) {
+ if (size == sve_size) {
sve = (struct target_sve_context *)ctx;
break;
}
--
2.34.1
- [PATCH 49/71] target/arm: Implement SME ADDHA, ADDVA, (continued)
- [PATCH 49/71] target/arm: Implement SME ADDHA, ADDVA, Richard Henderson, 2022/06/02
- [PATCH 54/71] target/arm: Implement PSEL, Richard Henderson, 2022/06/02
- [PATCH 58/71] target/arm: Enable SME for -cpu max, Richard Henderson, 2022/06/02
- [PATCH 51/71] target/arm: Implement BFMOPA, BFMOPS, Richard Henderson, 2022/06/02
- [PATCH 52/71] target/arm: Implement FMOPA, FMOPS (widening), Richard Henderson, 2022/06/02
- [PATCH 55/71] target/arm: Implement REVD, Richard Henderson, 2022/06/02
- [PATCH 50/71] target/arm: Implement FMOPA, FMOPS (non-widening), Richard Henderson, 2022/06/02
- [PATCH 53/71] target/arm: Implement SME integer outer product, Richard Henderson, 2022/06/02
- [PATCH 60/71] linux-user/aarch64: Reset PSTATE.SM on syscalls, Richard Henderson, 2022/06/02
- [PATCH 61/71] linux-user/aarch64: Add SM bit to SVE signal context, Richard Henderson, 2022/06/02
- [PATCH 63/71] linux-user/aarch64: Do not allow duplicate or short sve records,
Richard Henderson <=
- [PATCH 57/71] target/arm: Reset streaming sve state on exception boundaries, Richard Henderson, 2022/06/02
- [PATCH 59/71] linux-user/aarch64: Clear tpidr2_el0 if CLONE_SETTLS, Richard Henderson, 2022/06/02
- [PATCH 62/71] linux-user/aarch64: Tidy target_restore_sigframe error return, Richard Henderson, 2022/06/02
- [PATCH 47/71] target/arm: Export unpredicated ld/st from translate-sve.c, Richard Henderson, 2022/06/02
- [PATCH 66/71] linux-user/aarch64: Implement SME signal handling, Richard Henderson, 2022/06/02
- [PATCH 56/71] target/arm: Implement SCLAMP, UCLAMP, Richard Henderson, 2022/06/02
- [PATCH 65/71] linux-user/aarch64: Move sve record checks into restore, Richard Henderson, 2022/06/02
- [PATCH 68/71] linux-user/aarch64: Implement PR_SME_GET_VL, PR_SME_SET_VL, Richard Henderson, 2022/06/02
- [PATCH 64/71] linux-user/aarch64: Verify extra record lock succeeded, Richard Henderson, 2022/06/02
- [PATCH 71/71] linux-user/aarch64: Add SME related hwcap entries, Richard Henderson, 2022/06/02