hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/arch/s390/include/uapi/asm/kvm.h
....@@ -152,7 +152,10 @@
152152 __u8 pcc[16]; /* with MSA4 */
153153 __u8 ppno[16]; /* with MSA5 */
154154 __u8 kma[16]; /* with MSA8 */
155
- __u8 reserved[1808];
155
+ __u8 kdsa[16]; /* with MSA9 */
156
+ __u8 sortl[32]; /* with STFLE.150 */
157
+ __u8 dfltcc[32]; /* with STFLE.151 */
158
+ __u8 reserved[1728];
156159 };
157160
158161 /* kvm attributes for crypto */
....@@ -160,6 +163,8 @@
160163 #define KVM_S390_VM_CRYPTO_ENABLE_DEA_KW 1
161164 #define KVM_S390_VM_CRYPTO_DISABLE_AES_KW 2
162165 #define KVM_S390_VM_CRYPTO_DISABLE_DEA_KW 3
166
+#define KVM_S390_VM_CRYPTO_ENABLE_APIE 4
167
+#define KVM_S390_VM_CRYPTO_DISABLE_APIE 5
163168
164169 /* kvm attributes for migration mode */
165170 #define KVM_S390_VM_MIGRATION_STOP 0
....@@ -226,6 +231,14 @@
226231 #define KVM_SYNC_GSCB (1UL << 9)
227232 #define KVM_SYNC_BPBC (1UL << 10)
228233 #define KVM_SYNC_ETOKEN (1UL << 11)
234
+#define KVM_SYNC_DIAG318 (1UL << 12)
235
+
236
+#define KVM_SYNC_S390_VALID_FIELDS \
237
+ (KVM_SYNC_PREFIX | KVM_SYNC_GPRS | KVM_SYNC_ACRS | KVM_SYNC_CRS | \
238
+ KVM_SYNC_ARCH0 | KVM_SYNC_PFAULT | KVM_SYNC_VRS | KVM_SYNC_RICCB | \
239
+ KVM_SYNC_FPRS | KVM_SYNC_GSCB | KVM_SYNC_BPBC | KVM_SYNC_ETOKEN | \
240
+ KVM_SYNC_DIAG318)
241
+
229242 /* length and alignment of the sdnx as a power of two */
230243 #define SDNXC 8
231244 #define SDNXL (1UL << SDNXC)
....@@ -253,7 +266,8 @@
253266 __u8 reserved2 : 7;
254267 __u8 padding1[51]; /* riccb needs to be 64byte aligned */
255268 __u8 riccb[64]; /* runtime instrumentation controls block */
256
- __u8 padding2[192]; /* sdnx needs to be 256byte aligned */
269
+ __u64 diag318; /* diagnose 0x318 info */
270
+ __u8 padding2[184]; /* sdnx needs to be 256byte aligned */
257271 union {
258272 __u8 sdnx[SDNXL]; /* state description annex */
259273 struct {