aboutsummaryrefslogtreecommitdiff
path: root/arch/s390/include/uapi
diff options
context:
space:
mode:
authorGravatar Steffen Eiden <seiden@linux.ibm.com> 2023-08-15 17:14:14 +0200
committerGravatar Janosch Frank <frankja@linux.ibm.com> 2023-08-28 09:27:55 +0000
commit19c654bf05ae33ad0a2a9c039d5fe7d411a8bb06 (patch)
treeddf2f1d86d97f7a6fb21625cf5abb6cb64d8cd09 /arch/s390/include/uapi
parents390/uv: UV feature check utility (diff)
downloadlinux-19c654bf05ae33ad0a2a9c039d5fe7d411a8bb06.tar.gz
linux-19c654bf05ae33ad0a2a9c039d5fe7d411a8bb06.tar.bz2
linux-19c654bf05ae33ad0a2a9c039d5fe7d411a8bb06.zip
KVM: s390: Add UV feature negotiation
Add a uv_feature list for pv-guests to the KVM cpu-model. The feature bits 'AP-interpretation for secure guests' and 'AP-interrupt for secure guests' are available. Signed-off-by: Steffen Eiden <seiden@linux.ibm.com> Reviewed-by: Janosch Frank <frankja@linux.ibm.com> Reviewed-by: Michael Mueller <mimu@linux.ibm.com> Signed-off-by: Janosch Frank <frankja@linux.ibm.com> Link: https://lore.kernel.org/r/20230815151415.379760-4-seiden@linux.ibm.com Message-Id: <20230815151415.379760-4-seiden@linux.ibm.com>
Diffstat (limited to 'arch/s390/include/uapi')
-rw-r--r--arch/s390/include/uapi/asm/kvm.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/s390/include/uapi/asm/kvm.h b/arch/s390/include/uapi/asm/kvm.h
index a73cf01a1606..abe926d43cbe 100644
--- a/arch/s390/include/uapi/asm/kvm.h
+++ b/arch/s390/include/uapi/asm/kvm.h
@@ -159,6 +159,22 @@ struct kvm_s390_vm_cpu_subfunc {
__u8 reserved[1728];
};
+#define KVM_S390_VM_CPU_PROCESSOR_UV_FEAT_GUEST 6
+#define KVM_S390_VM_CPU_MACHINE_UV_FEAT_GUEST 7
+
+#define KVM_S390_VM_CPU_UV_FEAT_NR_BITS 64
+struct kvm_s390_vm_cpu_uv_feat {
+ union {
+ struct {
+ __u64 : 4;
+ __u64 ap : 1; /* bit 4 */
+ __u64 ap_intr : 1; /* bit 5 */
+ __u64 : 58;
+ };
+ __u64 feat;
+ };
+};
+
/* kvm attributes for crypto */
#define KVM_S390_VM_CRYPTO_ENABLE_AES_KW 0
#define KVM_S390_VM_CRYPTO_ENABLE_DEA_KW 1