Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
accel: Rename WHPX 'struct whpx_vcpu' -> AccelCPUState
We want all accelerators to share the same opaque pointer in
CPUState. Rename WHPX 'whpx_vcpu' as 'AccelCPUState'; use
the typedef.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230624174121.11508-14-philmd@linaro.org>
  • Loading branch information
philmd committed Jun 28, 2023
1 parent 50830fe commit b4f879a
Showing 1 changed file with 15 additions and 15 deletions.
30 changes: 15 additions & 15 deletions target/i386/whpx/whpx-all.c
Expand Up @@ -229,7 +229,7 @@ typedef enum WhpxStepMode {
WHPX_STEP_EXCLUSIVE,
} WhpxStepMode;

struct whpx_vcpu {
struct AccelCPUState {
WHV_EMULATOR_HANDLE emulator;
bool window_registered;
bool interruptable;
Expand Down Expand Up @@ -260,9 +260,9 @@ static bool whpx_has_xsave(void)
* VP support
*/

static struct whpx_vcpu *get_whpx_vcpu(CPUState *cpu)
static AccelCPUState *get_whpx_vcpu(CPUState *cpu)
{
return (struct whpx_vcpu *)cpu->accel;
return (AccelCPUState *)cpu->accel;
}

static WHV_X64_SEGMENT_REGISTER whpx_seg_q2h(const SegmentCache *qs, int v86,
Expand Down Expand Up @@ -390,7 +390,7 @@ static uint64_t whpx_cr8_to_apic_tpr(uint64_t cr8)
static void whpx_set_registers(CPUState *cpu, int level)
{
struct whpx_state *whpx = &whpx_global;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
CPUX86State *env = cpu->env_ptr;
X86CPU *x86_cpu = X86_CPU(cpu);
struct whpx_register_set vcxt;
Expand Down Expand Up @@ -609,7 +609,7 @@ static void whpx_get_xcrs(CPUState *cpu)
static void whpx_get_registers(CPUState *cpu)
{
struct whpx_state *whpx = &whpx_global;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
CPUX86State *env = cpu->env_ptr;
X86CPU *x86_cpu = X86_CPU(cpu);
struct whpx_register_set vcxt;
Expand Down Expand Up @@ -892,7 +892,7 @@ static const WHV_EMULATOR_CALLBACKS whpx_emu_callbacks = {
static int whpx_handle_mmio(CPUState *cpu, WHV_MEMORY_ACCESS_CONTEXT *ctx)
{
HRESULT hr;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
WHV_EMULATOR_STATUS emu_status;

hr = whp_dispatch.WHvEmulatorTryMmioEmulation(
Expand All @@ -917,7 +917,7 @@ static int whpx_handle_portio(CPUState *cpu,
WHV_X64_IO_PORT_ACCESS_CONTEXT *ctx)
{
HRESULT hr;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
WHV_EMULATOR_STATUS emu_status;

hr = whp_dispatch.WHvEmulatorTryIoEmulation(
Expand Down Expand Up @@ -1417,7 +1417,7 @@ static vaddr whpx_vcpu_get_pc(CPUState *cpu, bool exit_context_valid)
* of QEMU, nor this port by calling WHvSetVirtualProcessorRegisters().
* This is the most common case.
*/
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
return vcpu->exit_ctx.VpContext.Rip;
} else {
/*
Expand Down Expand Up @@ -1468,7 +1468,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu)
{
HRESULT hr;
struct whpx_state *whpx = &whpx_global;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
CPUX86State *env = cpu->env_ptr;
X86CPU *x86_cpu = X86_CPU(cpu);
int irq;
Expand Down Expand Up @@ -1590,7 +1590,7 @@ static void whpx_vcpu_pre_run(CPUState *cpu)

static void whpx_vcpu_post_run(CPUState *cpu)
{
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
CPUX86State *env = cpu->env_ptr;
X86CPU *x86_cpu = X86_CPU(cpu);

Expand All @@ -1617,7 +1617,7 @@ static void whpx_vcpu_process_async_events(CPUState *cpu)
{
CPUX86State *env = cpu->env_ptr;
X86CPU *x86_cpu = X86_CPU(cpu);
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);

if ((cpu->interrupt_request & CPU_INTERRUPT_INIT) &&
!(env->hflags & HF_SMM_MASK)) {
Expand Down Expand Up @@ -1656,7 +1656,7 @@ static int whpx_vcpu_run(CPUState *cpu)
{
HRESULT hr;
struct whpx_state *whpx = &whpx_global;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);
struct whpx_breakpoint *stepped_over_bp = NULL;
WhpxStepMode exclusive_step_mode = WHPX_STEP_NONE;
int ret;
Expand Down Expand Up @@ -2154,7 +2154,7 @@ int whpx_init_vcpu(CPUState *cpu)
{
HRESULT hr;
struct whpx_state *whpx = &whpx_global;
struct whpx_vcpu *vcpu = NULL;
AccelCPUState *vcpu = NULL;
Error *local_error = NULL;
CPUX86State *env = cpu->env_ptr;
X86CPU *x86_cpu = X86_CPU(cpu);
Expand All @@ -2177,7 +2177,7 @@ int whpx_init_vcpu(CPUState *cpu)
}
}

vcpu = g_new0(struct whpx_vcpu, 1);
vcpu = g_new0(AccelCPUState, 1);

hr = whp_dispatch.WHvEmulatorCreateEmulator(
&whpx_emu_callbacks,
Expand Down Expand Up @@ -2290,7 +2290,7 @@ int whpx_vcpu_exec(CPUState *cpu)
void whpx_destroy_vcpu(CPUState *cpu)
{
struct whpx_state *whpx = &whpx_global;
struct whpx_vcpu *vcpu = get_whpx_vcpu(cpu);
AccelCPUState *vcpu = get_whpx_vcpu(cpu);

whp_dispatch.WHvDeleteVirtualProcessor(whpx->partition, cpu->cpu_index);
whp_dispatch.WHvEmulatorDestroyEmulator(vcpu->emulator);
Expand Down

0 comments on commit b4f879a

Please sign in to comment.