Message ID | 1455829316-15382-1-git-send-email-thuth@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 02/18/2016 02:01 PM, Thomas Huth wrote: > 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> > --- > target-ppc/kvm.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c > index 762d6cf..6545fbe 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!"); No need to shout at the user; drop the trailing !
On Thu, Feb 18, 2016 at 03:13:52PM -0700, Eric Blake wrote: > On 02/18/2016 02:01 PM, Thomas Huth wrote: > > 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> > > --- > > target-ppc/kvm.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c > > index 762d6cf..6545fbe 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!"); > > No need to shout at the user; drop the trailing ! Applied to ppc-for-2.6 with ! removed. Thanks.
diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c index 762d6cf..6545fbe 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; }
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> --- target-ppc/kvm.c | 4 ++++ 1 file changed, 4 insertions(+)