KVM: Introduce kvm_vcpu_is_bsp() function.
Use it instead of open code "vcpu_id zero is BSP" assumption. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
@@ -164,7 +164,9 @@ static int ioapic_deliver(struct kvm_ioapic *ioapic, int irq)
|
||||
/* Always delivery PIT interrupt to vcpu 0 */
|
||||
if (irq == 0) {
|
||||
irqe.dest_mode = 0; /* Physical mode. */
|
||||
irqe.dest_id = ioapic->kvm->vcpus[0]->vcpu_id;
|
||||
/* need to read apic_id from apic regiest since
|
||||
* it can be rewritten */
|
||||
irqe.dest_id = ioapic->kvm->bsp_vcpu->vcpu_id;
|
||||
}
|
||||
#endif
|
||||
return kvm_irq_delivery_to_apic(ioapic->kvm, NULL, &irqe);
|
||||
|
@@ -1747,6 +1747,8 @@ static int kvm_vm_ioctl_create_vcpu(struct kvm *kvm, int n)
|
||||
goto vcpu_destroy;
|
||||
}
|
||||
kvm->vcpus[n] = vcpu;
|
||||
if (n == 0)
|
||||
kvm->bsp_vcpu = vcpu;
|
||||
mutex_unlock(&kvm->lock);
|
||||
|
||||
/* Now it's all set up, let userspace reach it */
|
||||
|
Reference in New Issue
Block a user