public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Cornelia Huck <cohuck@redhat.com>
To: Pierre Morel <pmorel@linux.ibm.com>
Cc: kvm@vger.kernel.org, frankja@linux.ibm.com, david@redhat.com,
	thuth@redhat.com, imbrenda@linux.ibm.com
Subject: Re: [kvm-unit-tests PATCH v5 4/6] s390x: css: implementing Set CHannel Monitor
Date: Tue, 9 Mar 2021 17:56:44 +0100	[thread overview]
Message-ID: <20210309175644.2cf7d11d.cohuck@redhat.com> (raw)
In-Reply-To: <1615294277-7332-5-git-send-email-pmorel@linux.ibm.com>

On Tue,  9 Mar 2021 13:51:15 +0100
Pierre Morel <pmorel@linux.ibm.com> wrote:

> We implement the call of the Set CHannel Monitor instruction,
> starting the monitoring of the all Channel Sub System, and
> initializing channel subsystem monitoring.
> 
> Initial tests report the presence of the extended measurement block
> feature, and verify the error reporting of the hypervisor for SCHM.
> 
> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
> Reviewed-by: Cornelia Huck <cohuck@redhat.com>
> Acked-by: Janosch Frank <frankja@linux.ibm.com>
> ---
>  lib/s390x/css.h     | 16 ++++++++++++++--
>  lib/s390x/css_lib.c |  4 ++--
>  s390x/css.c         | 35 +++++++++++++++++++++++++++++++++++
>  3 files changed, 51 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/s390x/css.h b/lib/s390x/css.h
> index 3c50fa8..7158423 100644
> --- a/lib/s390x/css.h
> +++ b/lib/s390x/css.h
> @@ -309,6 +309,7 @@ struct chsc_scsc {
>  	uint8_t reserved[9];
>  	struct chsc_header res;
>  	uint32_t res_fmt;
> +#define CSSC_EXTENDED_MEASUREMENT_BLOCK 48
>  	uint64_t general_char[255];
>  	uint64_t chsc_char[254];
>  };
> @@ -356,8 +357,19 @@ static inline int _chsc(void *p)
>  bool chsc(void *p, uint16_t code, uint16_t len);
>  
>  #include <bitops.h>
> -#define css_general_feature(bit) test_bit_inv(bit, chsc_scsc->general_char)
> -#define css_chsc_feature(bit) test_bit_inv(bit, chsc_scsc->chsc_char)
> +#define css_test_general_feature(bit) test_bit_inv(bit, chsc_scsc->general_char)
> +#define css_test_chsc_feature(bit) test_bit_inv(bit, chsc_scsc->chsc_char)

I think the renaming belongs in patch 1?

> +
> +#define SCHM_DCTM	1 /* activate Device Connection TiMe */
> +#define SCHM_MBU	2 /* activate Measurement Block Update */
> +
> +static inline void schm(void *mbo, unsigned int flags)
> +{
> +	register void *__gpr2 asm("2") = mbo;
> +	register long __gpr1 asm("1") = flags;
> +
> +	asm("schm" : : "d" (__gpr2), "d" (__gpr1));
> +}
>  
>  bool css_enable_mb(int sid, uint64_t mb, uint16_t mbi, uint16_t flg, bool fmt1);
>  bool css_disable_mb(int schid);
> diff --git a/lib/s390x/css_lib.c b/lib/s390x/css_lib.c
> index 77b39c7..95d9a78 100644
> --- a/lib/s390x/css_lib.c
> +++ b/lib/s390x/css_lib.c
> @@ -94,7 +94,7 @@ bool get_chsc_scsc(void)
>  		return false;
>  
>  	for (i = 0, p = buffer; i < CSS_GENERAL_FEAT_BITLEN; i++) {
> -		if (css_general_feature(i)) {
> +		if (css_test_general_feature(i)) {

and here...

>  			n = snprintf(p, sizeof(buffer), "%d,", i);
>  			p += n;
>  		}
> @@ -102,7 +102,7 @@ bool get_chsc_scsc(void)
>  	report_info("General features: %s", buffer);
>  
>  	for (i = 0, p = buffer; i < CSS_CHSC_FEAT_BITLEN; i++) {
> -		if (css_chsc_feature(i)) {
> +		if (css_test_chsc_feature(i)) {

...and here.

>  			n = snprintf(p, sizeof(buffer), "%d,", i);
>  			p += n;
>  		}


  reply	other threads:[~2021-03-09 16:57 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-09 12:51 [kvm-unit-tests PATCH v5 0/6] CSS Mesurement Block Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 1/6] s390x: css: Store CSS Characteristics Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 2/6] s390x: css: simplifications of the tests Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 3/6] s390x: css: extending the subchannel modifying functions Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 4/6] s390x: css: implementing Set CHannel Monitor Pierre Morel
2021-03-09 16:56   ` Cornelia Huck [this message]
2021-03-11 10:20     ` Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 5/6] s390x: css: testing measurement block format 0 Pierre Morel
2021-03-09 17:05   ` Cornelia Huck
2021-03-11 10:26     ` Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 6/6] s390x: css: testing measurement block format 1 Pierre Morel
2021-03-09 17:07   ` Cornelia Huck
2021-03-11 10:26     ` Pierre Morel
2021-03-09 16:54 ` [kvm-unit-tests PATCH v5 0/6] CSS Mesurement Block Cornelia Huck
2021-03-09 17:08   ` Cornelia Huck
2021-03-11 10:19     ` Pierre Morel

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=20210309175644.2cf7d11d.cohuck@redhat.com \
    --to=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=frankja@linux.ibm.com \
    --cc=imbrenda@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=pmorel@linux.ibm.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