Allow accelerators to set vCPU properties before its realization. Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org> --- include/system/accel-ops.h | 1 + accel/accel-common.c | 3 +++ 2 files changed, 4 insertions(+)
diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 44b37592d02..a863fe59388 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -35,6 +35,7 @@ struct AccelOpsClass { void (*ops_init)(AccelClass *ac); bool (*cpus_are_resettable)(void); + bool (*cpu_target_realize)(CPUState *cpu, Error **errp); void (*cpu_reset_hold)(CPUState *cpu); void (*create_vcpu_thread)(CPUState *cpu); /* MANDATORY NON-NULL */ diff --git a/accel/accel-common.c b/accel/accel-common.c index 56d88940f92..55d21b63a48 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -105,6 +105,9 @@ bool accel_cpu_common_realize(CPUState *cpu, Error **errp) if (acc->cpu_common_realize && !acc->cpu_common_realize(cpu, errp)) { return false; } + if (acc->ops->cpu_target_realize && !acc->ops->cpu_target_realize(cpu, errp)) { + return false; + } return true; } -- 2.49.0