mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
vcpu_dirty: share the same field in CPUState for all accelerators
This patch simply replaces the separate boolean field in CPUState that kvm, hax (and upcoming hvf) have for keeping track of vcpu dirtiness with a single shared field. Signed-off-by: Sergio Andres Gomez Del Real <Sergio.G.DelReal@gmail.com> Message-Id: <20170618191101.3457-1-Sergio.G.DelReal@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
0c7a8b9baa
commit
99f318322e
4 changed files with 20 additions and 19 deletions
|
@ -232,7 +232,7 @@ int hax_init_vcpu(CPUState *cpu)
|
|||
}
|
||||
|
||||
cpu->hax_vcpu = hax_global.vm->vcpus[cpu->cpu_index];
|
||||
cpu->hax_vcpu_dirty = true;
|
||||
cpu->vcpu_dirty = true;
|
||||
qemu_register_reset(hax_reset_vcpu_state, (CPUArchState *) (cpu->env_ptr));
|
||||
|
||||
return ret;
|
||||
|
@ -599,12 +599,12 @@ static void do_hax_cpu_synchronize_state(CPUState *cpu, run_on_cpu_data arg)
|
|||
CPUArchState *env = cpu->env_ptr;
|
||||
|
||||
hax_arch_get_registers(env);
|
||||
cpu->hax_vcpu_dirty = true;
|
||||
cpu->vcpu_dirty = true;
|
||||
}
|
||||
|
||||
void hax_cpu_synchronize_state(CPUState *cpu)
|
||||
{
|
||||
if (!cpu->hax_vcpu_dirty) {
|
||||
if (!cpu->vcpu_dirty) {
|
||||
run_on_cpu(cpu, do_hax_cpu_synchronize_state, RUN_ON_CPU_NULL);
|
||||
}
|
||||
}
|
||||
|
@ -615,7 +615,7 @@ static void do_hax_cpu_synchronize_post_reset(CPUState *cpu,
|
|||
CPUArchState *env = cpu->env_ptr;
|
||||
|
||||
hax_vcpu_sync_state(env, 1);
|
||||
cpu->hax_vcpu_dirty = false;
|
||||
cpu->vcpu_dirty = false;
|
||||
}
|
||||
|
||||
void hax_cpu_synchronize_post_reset(CPUState *cpu)
|
||||
|
@ -628,7 +628,7 @@ static void do_hax_cpu_synchronize_post_init(CPUState *cpu, run_on_cpu_data arg)
|
|||
CPUArchState *env = cpu->env_ptr;
|
||||
|
||||
hax_vcpu_sync_state(env, 1);
|
||||
cpu->hax_vcpu_dirty = false;
|
||||
cpu->vcpu_dirty = false;
|
||||
}
|
||||
|
||||
void hax_cpu_synchronize_post_init(CPUState *cpu)
|
||||
|
@ -638,7 +638,7 @@ void hax_cpu_synchronize_post_init(CPUState *cpu)
|
|||
|
||||
static void do_hax_cpu_synchronize_pre_loadvm(CPUState *cpu, run_on_cpu_data arg)
|
||||
{
|
||||
cpu->hax_vcpu_dirty = true;
|
||||
cpu->vcpu_dirty = true;
|
||||
}
|
||||
|
||||
void hax_cpu_synchronize_pre_loadvm(CPUState *cpu)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue