Both the cpu->tb_jmp_cache and SoftMMU TLB structures are only used when running TCG code so we might as well skip them for anything else.
Signed-off-by: Alex Bennée <alex.ben...@linaro.org> Reviewed-by: Eduardo Habkost <ehabk...@redhat.com> --- qom/cpu.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/qom/cpu.c b/qom/cpu.c index cc51de2a8c..61ee0cb88c 100644 --- a/qom/cpu.c +++ b/qom/cpu.c @@ -270,13 +270,15 @@ static void cpu_common_reset(CPUState *cpu) cpu->exception_index = -1; cpu->crash_occurred = false; - for (i = 0; i < TB_JMP_CACHE_SIZE; ++i) { - atomic_set(&cpu->tb_jmp_cache[i], NULL); - } + if (tcg_enabled()) { + for (i = 0; i < TB_JMP_CACHE_SIZE; ++i) { + atomic_set(&cpu->tb_jmp_cache[i], NULL); + } #ifdef CONFIG_SOFTMMU - tlb_flush(cpu, 0); + tlb_flush(cpu, 0); #endif + } } static bool cpu_common_has_work(CPUState *cs) -- 2.11.0