public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Pierre Morel <pmorel@linux.ibm.com>
To: Janosch Frank <frankja@linux.ibm.com>, kvm@vger.kernel.org
Cc: david@redhat.com, thuth@redhat.com, cohuck@redhat.com,
	imbrenda@linux.ibm.com
Subject: Re: [kvm-unit-tests PATCH v4 2/6] s390x: css: simplifications of the tests
Date: Mon, 8 Mar 2021 15:13:54 +0100	[thread overview]
Message-ID: <25d4a855-903a-32e7-d0de-dc5f4401b8a9@linux.ibm.com> (raw)
In-Reply-To: <70bbccca-6372-ee9a-37ae-913f5cc6a700@linux.ibm.com>



On 3/1/21 4:00 PM, Janosch Frank wrote:
> On 3/1/21 12:47 PM, Pierre Morel wrote:
>> In order to ease the writing of tests based on:

...snip...

>> -static void test_sense(void)
>> +static bool do_test_sense(void)
>>   {
>>   	struct ccw1 *ccw;
>> +	bool success = false;
> 
> That is a very counter-intuitive name, something like "retval" might be
> better.
> You're free to use the normal int returns but unfortunately you can't
> use the E* error constants like ENOMEM.

hum, I had retval and changed it to success on a proposition of Thomas...
I find it more intuitive as a bool since this function succeed or fail, 
no half way and is used for the reporting.

other opinion?


> 
>>   	int ret;
>>   	int len;
>>   
>>   	if (!test_device_sid) {
>>   		report_skip("No device");
>> -		return;
>> +		return success;
>>   	}
>>   
>> -	ret = css_enable(test_device_sid, IO_SCH_ISC);
>> -	if (ret) {
>> -		report(0, "Could not enable the subchannel: %08x",
>> -		       test_device_sid);
>> -		return;
>> +	if (!css_enabled(test_device_sid)) {
>> +		report(0, "enabling subchannel %08x", test_device_sid);
>> +		return success;
>>   	}
>>   
>> -	ret = register_io_int_func(css_irq_io);
>> -	if (ret) {
>> -		report(0, "Could not register IRQ handler");
>> -		return;
>> -	}
>> -
>> -	lowcore_ptr->io_int_param = 0;
>> -
>>   	senseid = alloc_io_mem(sizeof(*senseid), 0);
>>   	if (!senseid) {
>>   		report(0, "Allocation of senseid");
>> -		goto error_senseid;
>> +		return success;
>>   	}
>>   
>>   	ccw = ccw_alloc(CCW_CMD_SENSE_ID, senseid, sizeof(*senseid), CCW_F_SLI);
>> @@ -129,21 +120,34 @@ static void test_sense(void)
>>   	report_info("reserved 0x%02x cu_type 0x%04x cu_model 0x%02x dev_type 0x%04x dev_model 0x%02x",
>>   		    senseid->reserved, senseid->cu_type, senseid->cu_model,
>>   		    senseid->dev_type, senseid->dev_model);
>> +	report_info("cu_type expected 0x%04x got 0x%04x", (uint16_t)cu_type,
>> +		    senseid->cu_type);
>>   
>> -	report(senseid->cu_type == cu_type, "cu_type expected 0x%04x got 0x%04x",
>> -	       (uint16_t)cu_type, senseid->cu_type);
>> +	success = senseid->cu_type == cu_type;
>>   
>>   error:
>>   	free_io_mem(ccw, sizeof(*ccw));
>>   error_ccw:
>>   	free_io_mem(senseid, sizeof(*senseid));
>> -error_senseid:
>> -	unregister_io_int_func(css_irq_io);
>> +	return success;
>> +}
>> +
>> +static void test_sense(void)
>> +{
>> +	report(do_test_sense(), "Got CU type expected");
>>   }
>>   
>>   static void css_init(void)
>>   {
>>   	report(!!get_chsc_scsc(), "Store Channel Characteristics");
>> +
>> +	if (register_io_int_func(css_irq_io)) {
>> +		report(0, "Could not register IRQ handler");
>> +		return;
> 
> assert() please

Yes.

Thanks,
Pierre

-- 
Pierre Morel
IBM Lab Boeblingen

  reply	other threads:[~2021-03-08 14:15 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-01 11:46 [kvm-unit-tests PATCH v4 0/6] CSS Mesurement Block Pierre Morel
2021-03-01 11:47 ` [kvm-unit-tests PATCH v4 1/6] s390x: css: Store CSS Characteristics Pierre Morel
2021-03-01 14:45   ` Janosch Frank
2021-03-08 14:01     ` Pierre Morel
2021-03-08 14:39       ` Janosch Frank
2021-03-01 11:47 ` [kvm-unit-tests PATCH v4 2/6] s390x: css: simplifications of the tests Pierre Morel
2021-03-01 15:00   ` Janosch Frank
2021-03-08 14:13     ` Pierre Morel [this message]
2021-03-08 14:36       ` Janosch Frank
2021-03-08 14:41         ` Pierre Morel
2021-03-08 14:41       ` Thomas Huth
2021-03-08 15:14         ` Pierre Morel
2021-03-09  9:30         ` Pierre Morel
2021-03-01 11:47 ` [kvm-unit-tests PATCH v4 3/6] s390x: css: extending the subchannel modifying functions Pierre Morel
2021-03-01 11:47 ` [kvm-unit-tests PATCH v4 4/6] s390x: css: implementing Set CHannel Monitor Pierre Morel
2021-03-01 15:32   ` Janosch Frank
2021-03-08 14:24     ` Pierre Morel
2021-03-01 11:47 ` [kvm-unit-tests PATCH v4 5/6] s390x: css: testing measurement block format 0 Pierre Morel
2021-03-01 15:54   ` Janosch Frank
2021-03-04 17:05     ` Cornelia Huck
2021-03-08 14:55       ` Pierre Morel
2021-03-01 11:47 ` [kvm-unit-tests PATCH v4 6/6] s390x: css: testing measurement block format 1 Pierre Morel
2021-03-04 17:06 ` [kvm-unit-tests PATCH v4 0/6] CSS Mesurement Block Cornelia Huck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=25d4a855-903a-32e7-d0de-dc5f4401b8a9@linux.ibm.com \
    --to=pmorel@linux.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=frankja@linux.ibm.com \
    --cc=imbrenda@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox