From: Pierre Morel <pmorel@linux.ibm.com>
To: Thomas Huth <thuth@redhat.com>, kvm@vger.kernel.org
Cc: linux-s390@vger.kernel.org, frankja@linux.ibm.com,
david@redhat.com, cohuck@redhat.com, imbrenda@linux.ibm.com,
drjones@redhat.com, pbonzini@redhat.com
Subject: Re: [kvm-unit-tests PATCH v3 3/3] s390x: css: pv: css test adaptation for PV
Date: Thu, 21 Jan 2021 10:07:29 +0100 [thread overview]
Message-ID: <b08a9fa2-6b08-d616-ba3d-a04140490f75@linux.ibm.com> (raw)
In-Reply-To: <b4656e81-1492-d902-73cf-5a08a0a6247d@redhat.com>
On 1/20/21 1:03 PM, Thomas Huth wrote:
> On 19/01/2021 20.52, Pierre Morel wrote:
>> We want the tests to automatically work with or without protected
>> virtualisation.
>> To do this we need to share the I/O memory with the host.
>>
>> Let's replace all static allocations with dynamic allocations
>> to clearly separate shared and private memory.
>>
>> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
>> ---
> [...]
>> diff --git a/s390x/css.c b/s390x/css.c
>> index ee3bc83..4b0b6b1 100644
>> --- a/s390x/css.c
>> +++ b/s390x/css.c
>> @@ -17,13 +17,15 @@
>> #include <interrupt.h>
>> #include <asm/arch_def.h>
>> +#include <malloc_io.h>
>> #include <css.h>
>> +#include <asm/barrier.h>
>> #define DEFAULT_CU_TYPE 0x3832 /* virtio-ccw */
>> static unsigned long cu_type = DEFAULT_CU_TYPE;
>> static int test_device_sid;
>> -static struct senseid senseid;
>> +static struct senseid *senseid;
>> static void test_enumerate(void)
>> {
>> @@ -57,6 +59,7 @@ static void test_enable(void)
>> */
>> static void test_sense(void)
>> {
>> + struct ccw1 *ccw;
>> int ret;
>> int len;
>> @@ -80,9 +83,15 @@ static void test_sense(void)
>> lowcore_ptr->io_int_param = 0;
>> - memset(&senseid, 0, sizeof(senseid));
>> - ret = start_single_ccw(test_device_sid, CCW_CMD_SENSE_ID,
>> - &senseid, sizeof(senseid), CCW_F_SLI);
>> + senseid = alloc_io_page(sizeof(*senseid));
>
> Would it make sense to move the above alloc_io_page into the ccw_alloc()
> function, too?
If the goal is to have all allocations inside the ccw_alloc(),
I don't think so, we may have an already allocated buffer for which we
want to pass the address without any allocation inside ccw_alloc() to
reuse the same buffer.
>
>> + if (!senseid)
>> + goto error_senseid;
>> +
>> + ccw = ccw_alloc(CCW_CMD_SENSE_ID, senseid, sizeof(*senseid),
>> CCW_F_SLI);
>> + if (!ccw)
>> + goto error_ccw;
>> +
>> + ret = start_ccw1_chain(test_device_sid, ccw);
>> if (ret)
>> goto error;
>
> I think you should add a "report(0, ...)" or report_abort() in front of
> all three gotos above - otherwise the problems might go unnoticed.
Yes, right, I will do this,
Thanks.
Pierre
--
Pierre Morel
IBM Lab Boeblingen
prev parent reply other threads:[~2021-01-21 9:09 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-19 19:52 [kvm-unit-tests PATCH v3 0/3] s390x: css: pv: css test adaptation for PV Pierre Morel
2021-01-19 19:52 ` [kvm-unit-tests PATCH v3 1/3] s390x: pv: implement routine to share/unshare memory Pierre Morel
2021-01-20 10:48 ` Thomas Huth
2021-01-20 12:16 ` Pierre Morel
2021-01-20 16:48 ` Claudio Imbrenda
2021-01-19 19:52 ` [kvm-unit-tests PATCH v3 2/3] s390x: define UV compatible I/O allocation Pierre Morel
2021-01-20 11:01 ` Thomas Huth
2021-01-20 12:39 ` Pierre Morel
2021-01-20 12:25 ` Claudio Imbrenda
2021-01-20 12:41 ` Pierre Morel
2021-01-19 19:52 ` [kvm-unit-tests PATCH v3 3/3] s390x: css: pv: css test adaptation for PV Pierre Morel
2021-01-20 12:03 ` Thomas Huth
2021-01-21 9:07 ` Pierre Morel [this message]
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=b08a9fa2-6b08-d616-ba3d-a04140490f75@linux.ibm.com \
--to=pmorel@linux.ibm.com \
--cc=cohuck@redhat.com \
--cc=david@redhat.com \
--cc=drjones@redhat.com \
--cc=frankja@linux.ibm.com \
--cc=imbrenda@linux.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=pbonzini@redhat.com \
--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;
as well as URLs for NNTP newsgroup(s).