[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 7/8] linux-user/sparc: Flush register windows bef
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v2 7/8] linux-user/sparc: Flush register windows before clone |
Date: |
Thu, 9 May 2019 20:27:09 -0700 |
As seen as the very first instruction of sys_clone in the kernel.
Ideally this would be done in or before cpu_copy, and not with a
separate explicit test vs the syscall number, but this is a more
minimal solution.
Signed-off-by: Richard Henderson <address@hidden>
---
linux-user/sparc/cpu_loop.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/linux-user/sparc/cpu_loop.c b/linux-user/sparc/cpu_loop.c
index 9e357229c0..ff04f67847 100644
--- a/linux-user/sparc/cpu_loop.c
+++ b/linux-user/sparc/cpu_loop.c
@@ -169,6 +169,9 @@ void cpu_loop (CPUSPARCState *env)
case 0x110:
case 0x16d:
#endif
+ if (env->gregs[1] == TARGET_NR_clone) {
+ flush_windows(env);
+ }
ret = do_syscall (env, env->gregs[1],
env->regwptr[0], env->regwptr[1],
env->regwptr[2], env->regwptr[3],
--
2.17.1
- [Qemu-devel] [PATCH v2 0/8] linux-user sparc fixes, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 1/8] linux-user: Disallow setting newsp for fork, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 2/8] linux-user: Pass the parent env to cpu_clone_regs, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 4/8] linux-user/sparc: Use WREG constants in sparc/target_cpu.h, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 3/8] target/sparc: Define an enumeration for accessing env->regwptr, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 6/8] linux-user/sparc: Fix cpu_clone_regs, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 5/8] linux-user/sparc: Use WREG constants in sparc/signal.c, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 8/8] scripts/qemu-binfmt-conf: Update for sparc64, Richard Henderson, 2019/05/09
- [Qemu-devel] [PATCH v2 7/8] linux-user/sparc: Flush register windows before clone,
Richard Henderson <=