[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [Qemu-devel] 2x-3x tcg performance regression on ppc64 (m
From: |
Peter Maydell |
Subject: |
Re: [Qemu-ppc] [Qemu-devel] 2x-3x tcg performance regression on ppc64 (maybe others) |
Date: |
Tue, 5 Feb 2019 15:08:08 +0000 |
On Tue, 5 Feb 2019 at 14:47, Philippe Mathieu-Daudé <address@hidden> wrote:
> I was going to send this patch and was looking for to fill the
> "Reported-by" tag to finalize the commit description before sending:
>
> -- >8 --
> diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
> index aa7b81aaf0..8dc2aab60e 100644
> --- a/include/exec/exec-all.h
> +++ b/include/exec/exec-all.h
> @@ -418,7 +418,8 @@ static inline uint32_t tb_cflags(const
> TranslationBlock *tb)
> static inline uint32_t curr_cflags(void)
> {
> return (parallel_cpus ? CF_PARALLEL : 0)
> - | (use_icount ? CF_USE_ICOUNT : 0);
> + | (use_icount ? CF_USE_ICOUNT : 0)
> + | CF_CLUSTER_MASK;
> }
That's not right, because it puts all-1s in the cluster field.
That will happen to hit for TBs generated for CPUs in the
"not in a cluster" default UNASSIGNED_CLUSTER_INDEX, but it's
wrong for CPUs that are in a specifically assigned cluster
and will result in those failing to hit cached TBs when they should.
thanks
-- PMM