[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v1 09/12] translate-all: introduces tb_flush_safe.
From: |
Sergey Fedorov |
Subject: |
Re: [Qemu-devel] [RFC v1 09/12] translate-all: introduces tb_flush_safe. |
Date: |
Mon, 6 Jun 2016 13:06:19 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 |
On 06/06/16 11:54, Alex Bennée wrote:
> Sergey Fedorov <address@hidden> writes:
>
>> On 15/04/16 17:23, Alex Bennée wrote:
>>> diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
>>> index f695577..858055b 100644
>>> --- a/include/exec/exec-all.h
>>> +++ b/include/exec/exec-all.h
>>> @@ -307,6 +307,7 @@ struct TBContext {
>>>
>>> void tb_free(TranslationBlock *tb);
>>> void tb_flush(CPUState *cpu);
>>> +void tb_flush_safe(CPUState *cpu);
>> Do we really want to have both tb_flush_safe() and tb_flush()?
> I guess if we are going to include user-mode in the party ;-)
>
>
User-mode should be fine; we take care of it:
+void tb_flush_safe(CPUState *cpu)
+{
+#ifdef CONFIG_SOFTMMU
+ async_safe_run_on_cpu(cpu, tb_flush_work, NULL);
+#else
+ qemu_log("Safe flushing of TBs not implemented for linux-user\n");
+ tb_flush(cpu);
+#endif
+}
+
Kind regards,
Sergey