Re: [PATCH v13 5/6] KVM: s390: pv: support for Destroy fast UVC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/10/22 14:56, Claudio Imbrenda wrote:
Add support for the Destroy Secure Configuration Fast Ultravisor call,
and take advantage of it for asynchronous destroy.

When supported, the protected guest is destroyed immediately using the
new UVC, leaving only the memory to be cleaned up asynchronously.

Signed-off-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx>

Reviewed-by: Janosch Frank <frankja@xxxxxxxxxxxxx>

---
  arch/s390/include/asm/uv.h | 10 +++++++
  arch/s390/kvm/pv.c         | 57 ++++++++++++++++++++++++++++++++------
  2 files changed, 59 insertions(+), 8 deletions(-)

diff --git a/arch/s390/include/asm/uv.h b/arch/s390/include/asm/uv.h
index be3ef9dd6972..28a9ad57b6f1 100644
--- a/arch/s390/include/asm/uv.h
+++ b/arch/s390/include/asm/uv.h
@@ -34,6 +34,7 @@
  #define UVC_CMD_INIT_UV			0x000f
  #define UVC_CMD_CREATE_SEC_CONF		0x0100
  #define UVC_CMD_DESTROY_SEC_CONF	0x0101
+#define UVC_CMD_DESTROY_SEC_CONF_FAST	0x0102
  #define UVC_CMD_CREATE_SEC_CPU		0x0120
  #define UVC_CMD_DESTROY_SEC_CPU		0x0121
  #define UVC_CMD_CONV_TO_SEC_STOR	0x0200
@@ -81,6 +82,7 @@ enum uv_cmds_inst {
  	BIT_UVC_CMD_UNSHARE_ALL = 20,
  	BIT_UVC_CMD_PIN_PAGE_SHARED = 21,
  	BIT_UVC_CMD_UNPIN_PAGE_SHARED = 22,
+	BIT_UVC_CMD_DESTROY_SEC_CONF_FAST = 23,
  	BIT_UVC_CMD_DUMP_INIT = 24,
  	BIT_UVC_CMD_DUMP_CONFIG_STOR_STATE = 25,
  	BIT_UVC_CMD_DUMP_CPU = 26,
@@ -230,6 +232,14 @@ struct uv_cb_nodata {
  	u64 reserved20[4];
  } __packed __aligned(8);
+/* Destroy Configuration Fast */
+struct uv_cb_destroy_fast {
+	struct uv_cb_header header;
+	u64 reserved08[2];
+	u64 handle;
+	u64 reserved20[5];
+} __packed __aligned(8);



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux