diff options
Diffstat (limited to 'arch/x86/kvm/hyperv.c')
| -rw-r--r-- | arch/x86/kvm/hyperv.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/arch/x86/kvm/hyperv.c b/arch/x86/kvm/hyperv.c index 8d8c1cc7cb53..6e38a7d22e97 100644 --- a/arch/x86/kvm/hyperv.c +++ b/arch/x86/kvm/hyperv.c @@ -164,7 +164,7 @@ static int synic_set_sint(struct kvm_vcpu_hv_synic *synic, int sint,  static struct kvm_vcpu *get_vcpu_by_vpidx(struct kvm *kvm, u32 vpidx)  {  	struct kvm_vcpu *vcpu = NULL; -	int i; +	unsigned long i;  	if (vpidx >= KVM_MAX_VCPUS)  		return NULL; @@ -1716,7 +1716,8 @@ static __always_inline unsigned long *sparse_set_to_vcpu_mask(  {  	struct kvm_hv *hv = to_kvm_hv(kvm);  	struct kvm_vcpu *vcpu; -	int i, bank, sbank = 0; +	int bank, sbank = 0; +	unsigned long i;  	memset(vp_bitmap, 0,  	       KVM_HV_MAX_SPARSE_VCPU_SET_BITS * sizeof(*vp_bitmap)); @@ -1863,7 +1864,7 @@ static void kvm_send_ipi_to_many(struct kvm *kvm, u32 vector,  		.vector = vector  	};  	struct kvm_vcpu *vcpu; -	int i; +	unsigned long i;  	kvm_for_each_vcpu(i, vcpu, kvm) {  		if (vcpu_bitmap && !test_bit(i, vcpu_bitmap)) @@ -2519,6 +2520,8 @@ int kvm_get_hv_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid2 *cpuid,  		case HYPERV_CPUID_NESTED_FEATURES:  			ent->eax = evmcs_ver; +			if (evmcs_ver) +				ent->eax |= HV_X64_NESTED_MSR_BITMAP;  			break; |