Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 684851a1 authored by Takuya Yoshikawa's avatar Takuya Yoshikawa Committed by Paolo Bonzini
Browse files

KVM: x86: Break kvm_for_each_vcpu loop after finding the VP_INDEX



No need to scan the entire VCPU array.

Signed-off-by: default avatarTakuya Yoshikawa <yoshikawa_takuya_b1@lab.ntt.co.jp>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 9cac38dd
Loading
Loading
Loading
Loading
+5 −2
Original line number Original line Diff line number Diff line
@@ -2328,11 +2328,14 @@ static int get_msr_hyperv(struct kvm_vcpu *vcpu, u32 msr, u64 *pdata)
	case HV_X64_MSR_VP_INDEX: {
	case HV_X64_MSR_VP_INDEX: {
		int r;
		int r;
		struct kvm_vcpu *v;
		struct kvm_vcpu *v;
		kvm_for_each_vcpu(r, v, vcpu->kvm)
		kvm_for_each_vcpu(r, v, vcpu->kvm) {
			if (v == vcpu)
			if (v == vcpu) {
				data = r;
				data = r;
				break;
				break;
			}
			}
		}
		break;
	}
	case HV_X64_MSR_EOI:
	case HV_X64_MSR_EOI:
		return kvm_hv_vapic_msr_read(vcpu, APIC_EOI, pdata);
		return kvm_hv_vapic_msr_read(vcpu, APIC_EOI, pdata);
	case HV_X64_MSR_ICR:
	case HV_X64_MSR_ICR: