Re: [edk2] [PATCH 2/3] KVM: MTRR: simplify kvm_mtrr_get_guest_memory_type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 29/07/2015 21:07, Alex Williamson wrote:
> diff --git a/arch/x86/kvm/mtrr.c b/arch/x86/kvm/mtrr.c
> index e275013..dc0a84a 100644
> --- a/arch/x86/kvm/mtrr.c
> +++ b/arch/x86/kvm/mtrr.c
> @@ -672,15 +672,16 @@ u8 kvm_mtrr_get_guest_memory_type(struct kvm_vcpu *vcpu, gfn_t gfn)
>  	if (iter.mtrr_disabled)
>  		return mtrr_disabled_type();
>  
> -	/* It is not covered by MTRRs. */
> -	if (iter.partial_map) {
> -		/*
> -		 * We just check one page, partially covered by MTRRs is
> -		 * impossible.
> -		 */
> -		WARN_ON(type != -1);
> -		type = mtrr_default_type(mtrr_state);
> -	}
> +	/*
> +	 * We just check one page, partially covered by MTRRs is
> +	 * impossible.
> +	 */
> +	WARN_ON(iter.partial_map);
> +
> +	/* not contained in any MTRRs. */
> +	if (type == -1)
> +		return mtrr_default_type(mtrr_state);
> +
>  	return type;
>  }
>  EXPORT_SYMBOL_GPL(kvm_mtrr_get_guest_memory_type);
> 
> The WARN_ON() now comes before the type == -1 test and I hit that at
> *very* high frequency when trying to test device assignment.  Restoring
> the ordering to what Xiao originally proposed resolves the problem.
> Thanks,

And I remember testing the change and seeing the warning.  So, in short,
I screwed up.  Probably I tested on one machine and pushed from another. :/

Paolo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux