[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 07/35] HACK: Always enable parallel_cpus
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH v4 07/35] HACK: Always enable parallel_cpus |
Date: |
Tue, 04 Oct 2016 14:29:08 +0100 |
User-agent: |
mu4e 0.9.17; emacs 25.1.50.3 |
Richard Henderson <address@hidden> writes:
> This is really just a placeholder for an actual
> command-line switch for mttcg.
> ---
> translate-all.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/translate-all.c b/translate-all.c
> index 70f3959..c860cfc 100644
> --- a/translate-all.c
> +++ b/translate-all.c
> @@ -119,7 +119,7 @@ static void *l1_map[V_L1_SIZE];
>
> /* code generation context */
> TCGContext tcg_ctx;
> -bool parallel_cpus;
> +bool parallel_cpus = 1;
>
> /* translation block context */
> #ifdef CONFIG_USER_ONLY
Can we replace with:
linux-user: enable parallel code generation on clone
The variable parallel_cpus controls the generation of thread aware
atomic code. We only need to set it once we have cloned our first
thread. At this point any existing translations need to be thrown away.
Signed-off-by: Alex Bennée <address@hidden>
2 files changed, 10 insertions(+), 1 deletion(-)
linux-user/syscall.c | 9 +++++++++
translate-all.c | 2 +-
modified linux-user/syscall.c
@@ -6144,6 +6144,15 @@ static int do_fork(CPUArchState *env, unsigned int
flags, abi_ulong newsp,
sigfillset(&sigmask);
sigprocmask(SIG_BLOCK, &sigmask, &info.sigmask);
+ /* If this is our first additional thread we need to ensure we
+ * generate code for parallel execution and flush the old
+ * translations.
+ */
+ if (!parallel_cpus) {
+ parallel_cpus = true;
+ tb_flush(cpu);
+ }
+
ret = pthread_create(&info.thread, &attr, clone_func, &info);
/* TODO: Free new CPU state if thread creation failed. */
modified translate-all.c
@@ -119,7 +119,7 @@ static void *l1_map[V_L1_SIZE];
/* code generation context */
TCGContext tcg_ctx;
-bool parallel_cpus = 1;
+bool parallel_cpus;
/* translation block context */
#ifdef CONFIG_USER_ONLY
- Re: [Qemu-devel] [PATCH v4 07/35] HACK: Always enable parallel_cpus,
Alex Bennée <=