KVM: s390: index kvm->arch.idle_mask by vcpu_idx
[linux-2.6-microblaze.git] / arch / s390 / kvm / interrupt.c
index d548d60..16256e1 100644 (file)
@@ -419,13 +419,13 @@ static unsigned long deliverable_irqs(struct kvm_vcpu *vcpu)
 static void __set_cpu_idle(struct kvm_vcpu *vcpu)
 {
        kvm_s390_set_cpuflags(vcpu, CPUSTAT_WAIT);
-       set_bit(vcpu->vcpu_id, vcpu->kvm->arch.idle_mask);
+       set_bit(kvm_vcpu_get_idx(vcpu), vcpu->kvm->arch.idle_mask);
 }
 
 static void __unset_cpu_idle(struct kvm_vcpu *vcpu)
 {
        kvm_s390_clear_cpuflags(vcpu, CPUSTAT_WAIT);
-       clear_bit(vcpu->vcpu_id, vcpu->kvm->arch.idle_mask);
+       clear_bit(kvm_vcpu_get_idx(vcpu), vcpu->kvm->arch.idle_mask);
 }
 
 static void __reset_intercept_indicators(struct kvm_vcpu *vcpu)
@@ -3050,18 +3050,18 @@ int kvm_s390_get_irq_state(struct kvm_vcpu *vcpu, __u8 __user *buf, int len)
 
 static void __airqs_kick_single_vcpu(struct kvm *kvm, u8 deliverable_mask)
 {
-       int vcpu_id, online_vcpus = atomic_read(&kvm->online_vcpus);
+       int vcpu_idx, online_vcpus = atomic_read(&kvm->online_vcpus);
        struct kvm_s390_gisa_interrupt *gi = &kvm->arch.gisa_int;
        struct kvm_vcpu *vcpu;
 
-       for_each_set_bit(vcpu_id, kvm->arch.idle_mask, online_vcpus) {
-               vcpu = kvm_get_vcpu(kvm, vcpu_id);
+       for_each_set_bit(vcpu_idx, kvm->arch.idle_mask, online_vcpus) {
+               vcpu = kvm_get_vcpu(kvm, vcpu_idx);
                if (psw_ioint_disabled(vcpu))
                        continue;
                deliverable_mask &= (u8)(vcpu->arch.sie_block->gcr[6] >> 24);
                if (deliverable_mask) {
                        /* lately kicked but not yet running */
-                       if (test_and_set_bit(vcpu_id, gi->kicked_mask))
+                       if (test_and_set_bit(vcpu_idx, gi->kicked_mask))
                                return;
                        kvm_s390_vcpu_wakeup(vcpu);
                        return;