From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brijesh Singh Subject: [PATCH v9 14/29] hmp: add 'info sev' command Date: Thu, 15 Feb 2018 09:39:40 -0600 Message-ID: <20180215153955.3253-15-brijesh.singh@amd.com> References: <20180215153955.3253-1-brijesh.singh@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: Peter Maydell , Brijesh Singh , kvm@vger.kernel.org, "Michael S. Tsirkin" , Stefan Hajnoczi , Alexander Graf , "Edgar E. Iglesias" , Markus Armbruster , Bruce Rogers , Christian Borntraeger , Marcel Apfelbaum , Borislav Petkov , Thomas Lendacky , Eduardo Habkost , Richard Henderson , "Dr. David Alan Gilbert" , Alistair Francis , Cornelia Huck , Peter Crosthwaite , Paolo Bonzini To: qemu-devel@nongnu.org Return-path: In-Reply-To: <20180215153955.3253-1-brijesh.singh@amd.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+gceq-qemu-devel2=m.gmane.org@nongnu.org Sender: "Qemu-devel" List-Id: kvm.vger.kernel.org The command can be used to show the SEV information when memory encryption is enabled on AMD platform. Cc: Eric Blake Cc: "Daniel P. Berrang=C3=A9" Cc: "Dr. David Alan Gilbert" Cc: Markus Armbruster Signed-off-by: Brijesh Singh --- hmp-commands-info.hx | 14 ++++++++++++++ hmp.c | 19 +++++++++++++++++++ hmp.h | 1 + 3 files changed, 34 insertions(+) diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx index ad590a4ffb2b..236811c465d2 100644 --- a/hmp-commands-info.hx +++ b/hmp-commands-info.hx @@ -865,6 +865,20 @@ STEXI @findex info memory_size_summary Display the amount of initially allocated and present hotpluggable (if enabled) memory in bytes. +ETEXI + + { + .name =3D "sev", + .args_type =3D "", + .params =3D "", + .help =3D "show SEV information", + .cmd =3D hmp_info_sev, + }, + +STEXI +@item info sev +@findex info sev +Show SEV information. ETEXI =20 STEXI diff --git a/hmp.c b/hmp.c index 7870d6a3004e..f51a107a9be3 100644 --- a/hmp.c +++ b/hmp.c @@ -2924,3 +2924,22 @@ void hmp_info_memory_size_summary(Monitor *mon, cons= t QDict *qdict) } hmp_handle_error(mon, &err); } + +void hmp_info_sev(Monitor *mon, const QDict *qdict) +{ + SevInfo *info; + + info =3D qmp_query_sev(NULL); + monitor_printf(mon, "sev support: "); + monitor_printf(mon, "%s\n", info->enabled ? "enabled" : "disabled"); + + if (info->enabled) { + monitor_printf(mon, "state: %s\n", SevState_str(info->state)); + monitor_printf(mon, "policy: 0x%x\n", info->policy); + monitor_printf(mon, "build id: %u\n", info->build_id); + monitor_printf(mon, "api version: %u.%u\n", + info->api_major, info->api_minor); + } + + qapi_free_SevInfo(info); +} diff --git a/hmp.h b/hmp.h index 1143db44a760..4ca1a77b2c1f 100644 --- a/hmp.h +++ b/hmp.h @@ -146,5 +146,6 @@ void hmp_info_ramblock(Monitor *mon, const QDict *qdict= ); void hmp_hotpluggable_cpus(Monitor *mon, const QDict *qdict); void hmp_info_vm_generation_id(Monitor *mon, const QDict *qdict); void hmp_info_memory_size_summary(Monitor *mon, const QDict *qdict); +void hmp_info_sev(Monitor *mon, const QDict *qdict); =20 #endif --=20 2.14.3