Re: [kvm-unit-tests PATCH v2 4/4] s390x: STSI tests

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

 



On 8/23/19 12:57 PM, Thomas Huth wrote:
> On 8/21/19 12:47 PM, Janosch Frank wrote:
>> For now let's concentrate on the error conditions.
>>
>> Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx>
>> ---
>>  s390x/Makefile      |  1 +
>>  s390x/stsi.c        | 84 +++++++++++++++++++++++++++++++++++++++++++++
>>  s390x/unittests.cfg |  3 ++
>>  3 files changed, 88 insertions(+)
>>  create mode 100644 s390x/stsi.c
>>
>> diff --git a/s390x/Makefile b/s390x/Makefile
>> index 3453373..76db0bb 100644
>> --- a/s390x/Makefile
>> +++ b/s390x/Makefile
>> @@ -13,6 +13,7 @@ tests += $(TEST_DIR)/gs.elf
>>  tests += $(TEST_DIR)/iep.elf
>>  tests += $(TEST_DIR)/cpumodel.elf
>>  tests += $(TEST_DIR)/diag288.elf
>> +tests += $(TEST_DIR)/stsi.elf
>>  tests_binary = $(patsubst %.elf,%.bin,$(tests))
>>  
>>  all: directories test_cases test_cases_binary
>> diff --git a/s390x/stsi.c b/s390x/stsi.c
>> new file mode 100644
>> index 0000000..0f90c9a
>> --- /dev/null
>> +++ b/s390x/stsi.c
>> @@ -0,0 +1,84 @@
> [...]
>> +static inline unsigned long stsi_get_fc(void *addr)
>> +{
>> +	register unsigned long r0 asm("0") = 0;
>> +	register unsigned long r1 asm("1") = 0;
>> +	int cc;
>> +
>> +	asm volatile("stsi	0(%2)\n"
> 
> Shouldn't that be %3 instead?

Yup, although it doesn't really matter, as the address is ignored.

> 
>> +		     "ipm	%[cc]\n"
>> +		     "srl	%[cc],28\n"
>> +		     : "+d" (r0), [cc] "=d" (cc)
>> +		     : "d" (r1), "a" (addr)
>> +		     : "cc", "memory");
>> +	assert(!cc);
>> +	return r0 >> 28;
>> +}
>> +
>> +static void test_fc(void)
>> +{
>> +	report("cc == 3",  stsi(pagebuf, 7, 0, 0) == 3);
>> +	report("r0 == 3",  stsi_get_fc(pagebuf) >= 2);

Just changed it to:
"invalid fc"
"query fc >= 2

> 
> I'd like to suggest to change the string to "r0 >= 2", too.
> 
>  Thomas
> 


Attachment: signature.asc
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