Re: [Qemu-devel] [PATCH] qemu: fix cpuid eax for kvm cpu
On 05/01/2012 03:49 PM, Michael S. Tsirkin wrote: > On Tue, May 01, 2012 at 03:38:43PM +0300, Avi Kivity wrote: > > On 04/30/2012 05:42 PM, Michael S. Tsirkin wrote: > > > cpuid eax should return the max leaf so that > > > guests can find out the valid range. > > > This matches Xen et al. > > > > > > Tested using -cpu kvm64. > > > > > > Signed-off-by: Michael S. Tsirkin > > > --- > > > target-i386/kvm.c |2 +- > > > 1 files changed, 1 insertions(+), 1 deletions(-) > > > > > > diff --git a/target-i386/kvm.c b/target-i386/kvm.c > > > index e74a9e4..c097248 100644 > > > --- a/target-i386/kvm.c > > > +++ b/target-i386/kvm.c > > > @@ -379,7 +379,7 @@ int kvm_arch_init_vcpu(CPUX86State *env) > > > c->function = KVM_CPUID_SIGNATURE; > > > if (!hyperv_enabled()) { > > > memcpy(signature, "KVMKVMKVM\0\0\0", 12); > > > -c->eax = 0; > > > +c->eax = KVM_CPUID_FEATURES; > > > } else { > > > memcpy(signature, "Microsoft Hv", 12); > > > c->eax = HYPERV_CPUID_MIN; > > > > Should only change for -M 1.1+? > > I don't think we should: it's a bug fix and we don't try to be bug for > bug compatible unless fixing the bug actually affects guest behaviour. > I agree. -- error compiling committee.c: too many arguments to function
Re: [Qemu-devel] [PATCH] qemu: fix cpuid eax for kvm cpu
On Tue, May 01, 2012 at 03:38:43PM +0300, Avi Kivity wrote: > On 04/30/2012 05:42 PM, Michael S. Tsirkin wrote: > > cpuid eax should return the max leaf so that > > guests can find out the valid range. > > This matches Xen et al. > > > > Tested using -cpu kvm64. > > > > Signed-off-by: Michael S. Tsirkin > > --- > > target-i386/kvm.c |2 +- > > 1 files changed, 1 insertions(+), 1 deletions(-) > > > > diff --git a/target-i386/kvm.c b/target-i386/kvm.c > > index e74a9e4..c097248 100644 > > --- a/target-i386/kvm.c > > +++ b/target-i386/kvm.c > > @@ -379,7 +379,7 @@ int kvm_arch_init_vcpu(CPUX86State *env) > > c->function = KVM_CPUID_SIGNATURE; > > if (!hyperv_enabled()) { > > memcpy(signature, "KVMKVMKVM\0\0\0", 12); > > -c->eax = 0; > > +c->eax = KVM_CPUID_FEATURES; > > } else { > > memcpy(signature, "Microsoft Hv", 12); > > c->eax = HYPERV_CPUID_MIN; > > Should only change for -M 1.1+? I don't think we should: it's a bug fix and we don't try to be bug for bug compatible unless fixing the bug actually affects guest behaviour. > -- > error compiling committee.c: too many arguments to function
Re: [Qemu-devel] [PATCH] qemu: fix cpuid eax for kvm cpu
On 04/30/2012 05:42 PM, Michael S. Tsirkin wrote: > cpuid eax should return the max leaf so that > guests can find out the valid range. > This matches Xen et al. > > Tested using -cpu kvm64. > > Signed-off-by: Michael S. Tsirkin > --- > target-i386/kvm.c |2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/target-i386/kvm.c b/target-i386/kvm.c > index e74a9e4..c097248 100644 > --- a/target-i386/kvm.c > +++ b/target-i386/kvm.c > @@ -379,7 +379,7 @@ int kvm_arch_init_vcpu(CPUX86State *env) > c->function = KVM_CPUID_SIGNATURE; > if (!hyperv_enabled()) { > memcpy(signature, "KVMKVMKVM\0\0\0", 12); > -c->eax = 0; > +c->eax = KVM_CPUID_FEATURES; > } else { > memcpy(signature, "Microsoft Hv", 12); > c->eax = HYPERV_CPUID_MIN; Should only change for -M 1.1+? -- error compiling committee.c: too many arguments to function
[Qemu-devel] [PATCH] qemu: fix cpuid eax for kvm cpu
cpuid eax should return the max leaf so that guests can find out the valid range. This matches Xen et al. Tested using -cpu kvm64. Signed-off-by: Michael S. Tsirkin --- target-i386/kvm.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/target-i386/kvm.c b/target-i386/kvm.c index e74a9e4..c097248 100644 --- a/target-i386/kvm.c +++ b/target-i386/kvm.c @@ -379,7 +379,7 @@ int kvm_arch_init_vcpu(CPUX86State *env) c->function = KVM_CPUID_SIGNATURE; if (!hyperv_enabled()) { memcpy(signature, "KVMKVMKVM\0\0\0", 12); -c->eax = 0; +c->eax = KVM_CPUID_FEATURES; } else { memcpy(signature, "Microsoft Hv", 12); c->eax = HYPERV_CPUID_MIN; -- MST