[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 6 Jun 2023 17:23:18 +0200
From: Janosch Frank <frankja@...ux.ibm.com>
To: Steffen Eiden <seiden@...ux.ibm.com>, kvm@...r.kernel.org,
linux-s390@...r.kernel.org, linux-kernel@...r.kernel.org,
Viktor Mihajlovski <mihajlov@...ux.ibm.com>
Cc: Claudio Imbrenda <imbrenda@...ux.ibm.com>,
Nico Boehr <nrb@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Heiko Carstens <hca@...ux.ibm.com>,
Hendrik Brueckner <brueckner@...ux.ibm.com>
Subject: Re: [PATCH v3 6/6] s390/uv: Update query for secret-UVCs
On 6/6/23 13:37, Steffen Eiden wrote:
> Update the query struct such that secret-UVC related
> information can be parsed.
> Add sysfs files for these new values.
>
> 'supp_add_secret_req_ver' notes the supported versions for the
> Add Secret UVC. Bit 0 indicates that version 0x100 is supported,
> bit 1 indicates 0x200, and so on.
>
> 'supp_add_secret_pcf' notes the supported plaintext flags for
> the Add Secret UVC.
>
> 'supp_secret_types' notes the supported types of secrets.
> Bit 0 indicates secret type 1, bit 1 indicates type 2, and so on.
>
> 'max_secrets' notes the maximum amount of secrets the secret store can
> store per pv guest.
>
> Signed-off-by: Steffen Eiden <seiden@...ux.ibm.com>
> ---
> arch/s390/boot/uv.c | 4 ++++
> arch/s390/include/asm/uv.h | 13 +++++++++++--
> arch/s390/kernel/uv.c | 40 ++++++++++++++++++++++++++++++++++++++
> 3 files changed, 55 insertions(+), 2 deletions(-)
>
> diff --git a/arch/s390/boot/uv.c b/arch/s390/boot/uv.c
> index 0a077c0a2056..323b5cae3cf1 100644
> --- a/arch/s390/boot/uv.c
> +++ b/arch/s390/boot/uv.c
> @@ -47,6 +47,10 @@ void uv_query_info(void)
> uv_info.conf_dump_finalize_len = uvcb.conf_dump_finalize_len;
> uv_info.supp_att_req_hdr_ver = uvcb.supp_att_req_hdr_ver;
> uv_info.supp_att_pflags = uvcb.supp_att_pflags;
> + uv_info.supp_add_secret_req_ver = uvcb.supp_add_secret_req_ver;
> + uv_info.supp_add_secret_pcf = uvcb.supp_add_secret_pcf;
> + uv_info.supp_secret_types = uvcb.supp_secret_types;
> + uv_info.max_secrets = uvcb.max_num_secrets;
> }
>
> #ifdef CONFIG_PROTECTED_VIRTUALIZATION_GUEST
> diff --git a/arch/s390/include/asm/uv.h b/arch/s390/include/asm/uv.h
> index 3203ffbdde6b..d71eb9b887d3 100644
> --- a/arch/s390/include/asm/uv.h
> +++ b/arch/s390/include/asm/uv.h
> @@ -123,7 +123,7 @@ struct uv_cb_qui {
> u32 reserved70[3]; /* 0x0070 */
> u32 max_num_sec_conf; /* 0x007c */
> u64 max_guest_stor_addr; /* 0x0080 */
> - u8 reserved88[158 - 136]; /* 0x0088 */
> + u8 reserved88[0x9e - 0x88]; /* 0x0088 */
> u16 max_guest_cpu_id; /* 0x009e */
> u64 uv_feature_indications; /* 0x00a0 */
> u64 reserveda8; /* 0x00a8 */
> @@ -135,7 +135,12 @@ struct uv_cb_qui {
> u64 reservedd8; /* 0x00d8 */
> u64 supp_att_req_hdr_ver; /* 0x00e0 */
> u64 supp_att_pflags; /* 0x00e8 */
> - u8 reservedf0[256 - 240]; /* 0x00f0 */
> + u64 reservedf0; /* 0x00f0 */
> + u64 supp_add_secret_req_ver; /* 0x00f8 */
> + u64 supp_add_secret_pcf; /* 0x0100 */
> + u64 supp_secret_types; /* 0x0180 */
> + u16 max_num_secrets; /* 0x0110 */
Now I know where you got the "num" from
Powered by blists - more mailing lists