Re: [kvm-unit-tests PATCH v2] powerpc: don't fail if QEMU does not support alignment exception

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

 



On Wed, 20 Apr 2016 13:40:47 +0200
Laurent Vivier <lvivier@xxxxxxxxxx> wrote:

> As for lswi, lswx is supposed to cause an alignment exception in
> little endian mode, but QEMU does not support it. So in case we do
> not get an exception, this is an expected failure and we run the other
> tests.
> 
> Signed-off-by: Laurent Vivier <lvivier@xxxxxxxxxx>

Reviewed-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx>
> ---
> v2: move report("partial",...) out of #if..#endif block
> 
>  powerpc/emulator.c | 15 +++++++++++----
>  1 file changed, 11 insertions(+), 4 deletions(-)
> 
> diff --git a/powerpc/emulator.c b/powerpc/emulator.c
> index 4dc341f..0e5f7a3 100644
> --- a/powerpc/emulator.c
> +++ b/powerpc/emulator.c
> @@ -245,11 +245,18 @@ static void test_lswx(void)
>  		      "xer", "r11", "r12", "memory");
>  
>  #if  __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
> -	report("alignment", alignment);
> -	return;
> -#else
> -	report("partial", regs[0] == 0x01020300 && regs[1] == (uint64_t)-1);
> +	/*
> +	 * lswx is supposed to cause an alignment exception in little endian
> +	 * mode, but QEMU does not support it. So in case we do not get an
> +	 * exception, this is an expected failure and we run the other tests
> +	 */
> +	report_xfail("alignment", !alignment, alignment);
> +	if (alignment) {
> +		report_prefix_pop();
> +		return;
> +	}
>  #endif
> +	report("partial", regs[0] == 0x01020300 && regs[1] == (uint64_t)-1);
>  
>  	/* check an old know bug: the number of bytes is used as
>  	 * the number of registers, so try 32 bytes.
> -- 
> 2.5.5
> 


-- 
David Gibson <dgibson@xxxxxxxxxx>
Senior Software Engineer, Virtualization, Red Hat

Attachment: pgphTEqPp6URq.pgp
Description: OpenPGP digital signature


[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