Message ID | 1344369413-9053-4-git-send-email-ehabkost@redhat.com |
---|---|
State | New |
Headers | show |
On 08/07/2012 09:56 PM, Eduardo Habkost wrote: > The CPU ID in KVM is supposed to be the APIC ID, so change the > KVM_CREATE_VCPU call to match it. It didn't break anything yet because > today the APIC ID is assumed to be == the CPU index, but this won't be > true in the future. What it would break if APIC ID != CPU index ? > > Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> > --- > kvm-all.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kvm-all.c b/kvm-all.c > index 2148b20..38de992 100644 > --- a/kvm-all.c > +++ b/kvm-all.c > @@ -213,7 +213,7 @@ int kvm_init_vcpu(CPUArchState *env) > > DPRINTF("kvm_init_vcpu\n"); > > - ret = kvm_vm_ioctl(s, KVM_CREATE_VCPU, env->cpu_index); > + ret = kvm_vm_ioctl(s, KVM_CREATE_VCPU, env->cpuid_apic_id); > if (ret < 0) { > DPRINTF("kvm_create_vcpu failed\n"); > goto err; >
On Mon, Aug 13, 2012 at 09:16:52PM +0200, Igor Mammedov wrote: > On 08/07/2012 09:56 PM, Eduardo Habkost wrote: > >The CPU ID in KVM is supposed to be the APIC ID, so change the > >KVM_CREATE_VCPU call to match it. It didn't break anything yet because > >today the APIC ID is assumed to be == the CPU index, but this won't be > >true in the future. > What it would break if APIC ID != CPU index ? It is not supposed to break anything, now that SeaBIOS was changed to accept non-contiguous APIC IDs (and after applying patches 3-6 from this series). If there is other code that expect APIC ID == CPU index, that code also needs to be fixed. > > > > >Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> > >--- > > kvm-all.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > >diff --git a/kvm-all.c b/kvm-all.c > >index 2148b20..38de992 100644 > >--- a/kvm-all.c > >+++ b/kvm-all.c > >@@ -213,7 +213,7 @@ int kvm_init_vcpu(CPUArchState *env) > > > > DPRINTF("kvm_init_vcpu\n"); > > > >- ret = kvm_vm_ioctl(s, KVM_CREATE_VCPU, env->cpu_index); > >+ ret = kvm_vm_ioctl(s, KVM_CREATE_VCPU, env->cpuid_apic_id); > > if (ret < 0) { > > DPRINTF("kvm_create_vcpu failed\n"); > > goto err; > > > > > -- > Regards, > Igor
diff --git a/kvm-all.c b/kvm-all.c index 2148b20..38de992 100644 --- a/kvm-all.c +++ b/kvm-all.c @@ -213,7 +213,7 @@ int kvm_init_vcpu(CPUArchState *env) DPRINTF("kvm_init_vcpu\n"); - ret = kvm_vm_ioctl(s, KVM_CREATE_VCPU, env->cpu_index); + ret = kvm_vm_ioctl(s, KVM_CREATE_VCPU, env->cpuid_apic_id); if (ret < 0) { DPRINTF("kvm_create_vcpu failed\n"); goto err;
The CPU ID in KVM is supposed to be the APIC ID, so change the KVM_CREATE_VCPU call to match it. It didn't break anything yet because today the APIC ID is assumed to be == the CPU index, but this won't be true in the future. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> --- kvm-all.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)