@@ -244,8 +244,6 @@ typedef struct SavedIOTLB {
struct KVMState;
struct kvm_run;
-struct hax_vcpu_state;
-
#define TB_JMP_CACHE_BITS 12
#define TB_JMP_CACHE_SIZE (1 << TB_JMP_CACHE_BITS)
@@ -421,7 +419,6 @@ struct CPUState {
int kvm_fd;
struct KVMState *kvm_state;
struct kvm_run *kvm_run;
- struct hax_vcpu_state *hax_vcpu;
int hvf_fd;
/* shared by kvm, hax and hvf */
bool vcpu_dirty;
@@ -26,8 +26,8 @@ typedef HANDLE hax_fd;
extern struct hax_state hax_global;
-typedef struct hax_vcpu_state hax_vcpu_state;
-struct hax_vcpu_state {
+typedef struct AccelvCPUState hax_vcpu_state;
+struct AccelvCPUState {
hax_fd fd;
int vcpu_id;
struct hax_tunnel *tunnel;
@@ -68,7 +68,7 @@ int valid_hax_tunnel_size(uint16_t size)
hax_fd hax_vcpu_get_fd(CPUArchState *env)
{
- hax_vcpu_state *vcpu = env_cpu(env)->hax_vcpu;
+ hax_vcpu_state *vcpu = env_cpu(env)->accel_vcpu;
if (!vcpu) {
return HAX_INVALID_FD;
}
@@ -194,7 +194,7 @@ int hax_vcpu_create(int id)
int hax_vcpu_destroy(CPUState *cpu)
{
- hax_vcpu_state *vcpu = cpu->hax_vcpu;
+ hax_vcpu_state *vcpu = cpu->accel_vcpu;
if (!hax_global.vm) {
fprintf(stderr, "vcpu %x destroy failed, vm is null\n", vcpu->vcpu_id);
@@ -414,7 +414,7 @@ static int hax_handle_io(CPUArchState *env, uint32_t df, uint16_t port,
static int hax_vcpu_interrupt(CPUArchState *env)
{
CPUState *cpu = env_cpu(env);
- hax_vcpu_state *vcpu = cpu->hax_vcpu;
+ hax_vcpu_state *vcpu = cpu->accel_vcpu;
struct hax_tunnel *ht = vcpu->tunnel;
/*
@@ -446,7 +446,7 @@ static int hax_vcpu_interrupt(CPUArchState *env)
void hax_raise_event(CPUState *cpu)
{
- hax_vcpu_state *vcpu = cpu->hax_vcpu;
+ hax_vcpu_state *vcpu = cpu->accel_vcpu;
if (!vcpu) {
return;
@@ -467,7 +467,7 @@ static int hax_vcpu_hax_exec(CPUArchState *env)
int ret = 0;
CPUState *cpu = env_cpu(env);
X86CPU *x86_cpu = X86_CPU(cpu);
- hax_vcpu_state *vcpu = cpu->hax_vcpu;
+ hax_vcpu_state *vcpu = cpu->accel_vcpu;
struct hax_tunnel *ht = vcpu->tunnel;
if (!hax_enabled()) {
@@ -1113,8 +1113,8 @@ void hax_reset_vcpu_state(void *opaque)
{
CPUState *cpu;
for (cpu = first_cpu; cpu != NULL; cpu = CPU_NEXT(cpu)) {
- cpu->hax_vcpu->tunnel->user_event_pending = 0;
- cpu->hax_vcpu->tunnel->ready_for_interrupt_injection = 0;
+ cpu->accel_vcpu->tunnel->user_event_pending = 0;
+ cpu->accel_vcpu->tunnel->ready_for_interrupt_injection = 0;
}
}
Use the 'accel_vcpu' field which is meant for accelerators. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- include/hw/core/cpu.h | 3 --- target/i386/hax/hax-i386.h | 4 ++-- target/i386/hax/hax-all.c | 14 +++++++------- 3 files changed, 9 insertions(+), 12 deletions(-)