cpus: Restrict cpu_common_post_load() code to TCG
CPU_INTERRUPT_EXIT was removed in commit 3098dba01c7 ("Use a dedicated function to request exit from execution loop"), tlb_flush() and tb_flush() are related to TCG accelerator. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20250123234415.59850-17-philmd@linaro.org>
This commit is contained in:
parent
c90476325c
commit
530c7139f6
31
cpu-target.c
31
cpu-target.c
@ -46,22 +46,25 @@
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
static int cpu_common_post_load(void *opaque, int version_id)
|
||||
{
|
||||
CPUState *cpu = opaque;
|
||||
if (tcg_enabled()) {
|
||||
CPUState *cpu = opaque;
|
||||
|
||||
/*
|
||||
* 0x01 was CPU_INTERRUPT_EXIT. This line can be removed when the
|
||||
* version_id is increased.
|
||||
*/
|
||||
cpu->interrupt_request &= ~0x01;
|
||||
tlb_flush(cpu);
|
||||
/*
|
||||
* 0x01 was CPU_INTERRUPT_EXIT. This line can be removed when the
|
||||
* version_id is increased.
|
||||
*/
|
||||
cpu->interrupt_request &= ~0x01;
|
||||
|
||||
/*
|
||||
* loadvm has just updated the content of RAM, bypassing the
|
||||
* usual mechanisms that ensure we flush TBs for writes to
|
||||
* memory we've translated code from. So we must flush all TBs,
|
||||
* which will now be stale.
|
||||
*/
|
||||
tb_flush(cpu);
|
||||
tlb_flush(cpu);
|
||||
|
||||
/*
|
||||
* loadvm has just updated the content of RAM, bypassing the
|
||||
* usual mechanisms that ensure we flush TBs for writes to
|
||||
* memory we've translated code from. So we must flush all TBs,
|
||||
* which will now be stale.
|
||||
*/
|
||||
tb_flush(cpu);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user