Re: [kvm-unit-tests PATCH] x86: Fix max VMCS field encoding index check

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

 



On 18/05/19 18:37, Nadav Amit wrote:
> The test that checks the maximum VMCS field encoding does not probe all
> possible VMCS fields. As a result it might fail since the actual
> IA32_VMX_VMCS_ENUM.MAX_INDEX would be higher than the expected value.
> 
> Change the test to check that the maximum of the supported probed
> VMCS fields is lower/equal than the actual reported
> IA32_VMX_VMCS_ENUM.MAX_INDEX.
> 
> This test might still fail on bare-metal due to errata (e.g., BDX30).
> 
> Cc: Sean Christopherson <sean.j.christopherson@xxxxxxxxx>
> Signed-off-by: Nadav Amit <nadav.amit@xxxxxxxxx>
> ---
>  x86/vmx.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/x86/vmx.c b/x86/vmx.c
> index 962ec0f..f540e15 100644
> --- a/x86/vmx.c
> +++ b/x86/vmx.c
> @@ -361,8 +361,8 @@ static void test_vmwrite_vmread(void)
>  	report("VMWRITE/VMREAD", __check_all_vmcs_fields(0x42, &max_index));
>  
>  	vmcs_enum_max = rdmsr(MSR_IA32_VMX_VMCS_ENUM) & VMCS_FIELD_INDEX_MASK;
> -	report("VMX_VMCS_ENUM.MAX_INDEX expected: %x, actual: %x",
> -		vmcs_enum_max == max_index, max_index, vmcs_enum_max);
> +	report("VMX_VMCS_ENUM.MAX_INDEX expected at least: %x, actual: %x",
> +		vmcs_enum_max >= max_index, max_index, vmcs_enum_max);
>  
>  	assert(!vmcs_clear(vmcs));
>  	free_page(vmcs);
> 

Queued, thanks.

Paolo



[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