summaryrefslogtreecommitdiff
path: root/linux-headers/asm-s390/kvm.h
diff options
context:
space:
mode:
authorCornelia Huck <cornelia.huck@de.ibm.com>2016-02-22 13:36:17 +0100
committerCornelia Huck <cornelia.huck@de.ibm.com>2016-03-01 12:15:28 +0100
commit66fb2d5467cc93feecc12d3bbab860d7615b6616 (patch)
treed0c50ac84a5776eae7507155ba1af8b6d5c24c1a /linux-headers/asm-s390/kvm.h
parent9c74a853048f14fd9a3e2efa1e3a6935d00e7495 (diff)
downloadqemu-66fb2d5467cc93feecc12d3bbab860d7615b6616.tar.gz
linux-headers: update against kvm/next
Update against commit efef127c, but keep userfaultd.h. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Diffstat (limited to 'linux-headers/asm-s390/kvm.h')
-rw-r--r--linux-headers/asm-s390/kvm.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/linux-headers/asm-s390/kvm.h b/linux-headers/asm-s390/kvm.h
index ac213a153a..a59499be0a 100644
--- a/linux-headers/asm-s390/kvm.h
+++ b/linux-headers/asm-s390/kvm.h
@@ -153,6 +153,8 @@ struct kvm_guest_debug_arch {
#define KVM_SYNC_ARCH0 (1UL << 4)
#define KVM_SYNC_PFAULT (1UL << 5)
#define KVM_SYNC_VRS (1UL << 6)
+#define KVM_SYNC_RICCB (1UL << 7)
+#define KVM_SYNC_FPRS (1UL << 8)
/* definition of registers in kvm_run */
struct kvm_sync_regs {
__u64 prefix; /* prefix register */
@@ -167,9 +169,14 @@ struct kvm_sync_regs {
__u64 pft; /* pfault token [PFAULT] */
__u64 pfs; /* pfault select [PFAULT] */
__u64 pfc; /* pfault compare [PFAULT] */
- __u64 vrs[32][2]; /* vector registers */
+ union {
+ __u64 vrs[32][2]; /* vector registers (KVM_SYNC_VRS) */
+ __u64 fprs[16]; /* fp registers (KVM_SYNC_FPRS) */
+ };
__u8 reserved[512]; /* for future vector expansion */
- __u32 fpc; /* only valid with vector registers */
+ __u32 fpc; /* valid on KVM_SYNC_VRS or KVM_SYNC_FPRS */
+ __u8 padding[52]; /* riccb needs to be 64byte aligned */
+ __u8 riccb[64]; /* runtime instrumentation controls block */
};
#define KVM_REG_S390_TODPR (KVM_REG_S390 | KVM_REG_SIZE_U32 | 0x1)