On 2/5/19 4:08 PM, Peter Maydell wrote:
> On Tue, 5 Feb 2019 at 14:47, Philippe Mathieu-Daudé <[email protected]> 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.

Oh OK now I understand.

Thanks for the explanation!

Phil.

> 
> thanks
> -- PMM
> 

Reply via email to