qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 2/7] accel/tcg: suppress IRQ check for special TBs


From: Alex Bennée
Subject: Re: [PATCH v2 2/7] accel/tcg: suppress IRQ check for special TBs
Date: Mon, 29 Nov 2021 11:33:01 +0000
User-agent: mu4e 1.7.5; emacs 28.0.60

Richard Henderson <richard.henderson@linaro.org> writes:

> On 11/25/21 4:41 PM, Alex Bennée wrote:
>> @@ -1738,7 +1738,7 @@ tb_invalidate_phys_page_range__locked(struct 
>> page_collection *pages,
>>       if (current_tb_modified) {
>>           page_collection_unlock(pages);
>>           /* Force execution of one insn next time.  */
>> -        cpu->cflags_next_tb = 1 | curr_cflags(cpu);
>> +        cpu->cflags_next_tb = 1 | CF_NOIRQ | curr_cflags(cpu);
>>           mmap_unlock();
>>           cpu_loop_exit_noexc(cpu);
>>       }
>
> There's another instance in tb_invalidate_phys_page.
>
>> diff --git a/softmmu/physmem.c b/softmmu/physmem.c
>> index 314f8b439c..b43f92e900 100644
>> --- a/softmmu/physmem.c
>> +++ b/softmmu/physmem.c
>> @@ -946,7 +946,7 @@ void cpu_check_watchpoint(CPUState *cpu, vaddr addr, 
>> vaddr len,
>>                   cpu_loop_exit(cpu);
>>               } else {
>>                   /* Force execution of one insn next time.  */
>> -                cpu->cflags_next_tb = 1 | CF_LAST_IO | curr_cflags(cpu);
>> +                cpu->cflags_next_tb = 1 | CF_LAST_IO | CF_NOIRQ | 
>> curr_cflags(cpu);
>>                   mmap_unlock();
>>                   cpu_loop_exit_noexc(cpu);
>>               }
>
> And a second instance in this function.

I had skipped this one as icount was in effect but I guess it can't hurt.

-- 
Alex Bennée



reply via email to

[Prev in Thread] Current Thread [Next in Thread]