diff mbox

[PULL,5/5] ppc/kvm: Tell the user what might be wrong when using bad CPU types with kvm-hv

Message ID 1456369330-7294-6-git-send-email-david@gibson.dropbear.id.au
State New, archived
Headers show

Commit Message

David Gibson Feb. 25, 2016, 3:02 a.m. UTC
From: Thomas Huth <thuth@redhat.com>

Using a CPU type that does not match the host is not possible when using
the kvm-hv kernel module - the PVR is checked in the kernel function
kvm_arch_vcpu_ioctl_set_sregs_hv() and rejected with -EINVAL if it
does not match the host.
However, when the user tries to specify a non-matching CPU type, QEMU
currently only reports "kvm_init_vcpu failed: Invalid argument", and
this is of course not very helpful for the user to solve the problem.
So this patch adds a more descriptive error message that tells the
user to specify "-cpu host" instead.

Signed-off-by: Thomas Huth <thuth@redhat.com>
[Removed melodramatic '!' :)]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
 target-ppc/kvm.c | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox


diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c
index 762d6cf..d67c169 100644
--- a/target-ppc/kvm.c
+++ b/target-ppc/kvm.c
@@ -513,6 +513,10 @@  int kvm_arch_init_vcpu(CPUState *cs)
     /* Synchronize sregs with kvm */
     ret = kvm_arch_sync_sregs(cpu);
     if (ret) {
+        if (ret == -EINVAL) {
+            error_report("Register sync failed... If you're using kvm-hv.ko,"
+                         " only \"-cpu host\" is possible");
+        }
         return ret;