diff options
author | Andreas Färber <afaerber@suse.de> | 2013-01-06 08:31:31 +0000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2013-01-07 17:37:11 +0100 |
commit | 1b7ce68fb45b97a9eaf71eeb81d2b4f4ea6bf4b2 (patch) | |
tree | 0fff63228b5a006bb1d0ea8a67efe34ad813b301 /target-ppc/kvm.c | |
parent | 2985b86b5c9c068af203bd912309af033112039a (diff) |
target-ppc: Error out for -cpu host on unknown PVR
Previously we silently exited, with subclasses we got an opcode warning.
Instead, explicitly tell the user what's wrong.
An indication for this is -cpu ? showing "host" with an all-zero PVR.
Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-ppc/kvm.c')
-rw-r--r-- | target-ppc/kvm.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c index ce7d69b403..4846acfc0d 100644 --- a/target-ppc/kvm.c +++ b/target-ppc/kvm.c @@ -1232,7 +1232,15 @@ static void alter_insns(uint64_t *word, uint64_t flags, bool on) static void kvmppc_host_cpu_initfn(Object *obj) { + PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(obj); + assert(kvm_enabled()); + + if (pcc->info->pvr != mfpvr()) { + fprintf(stderr, "Your host CPU is unsupported.\n" + "Please choose a supported model instead, see -cpu ?.\n"); + exit(1); + } } static void kvmppc_host_cpu_class_init(ObjectClass *oc, void *data) |