diff options
author | Carsten Otte <carsteno@de.ibm.com> | 2009-11-19 14:21:16 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-12-18 14:03:35 -0800 |
commit | fff7d05d83d41107dd1c8740cfbfd50fe3ce87e8 (patch) | |
tree | a3999af454ef94c3f61a524d23a4418510eff438 /include | |
parent | f7b0fd208527e8f755e06411821efb5cc89c0868 (diff) |
KVM: s390: Make psw available on all exits, not just a subset
commit d7b0b5eb3000c6fb902f08c619fcd673a23d8fab upstream.
This patch moves s390 processor status word into the base kvm_run
struct and keeps it up-to date on all userspace exits.
The userspace ABI is broken by this, however there are no applications
in the wild using this. A capability check is provided so users can
verify the updated API exists.
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/kvm.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/kvm.h b/include/linux/kvm.h index f8f8900fc5ec..8908dd6cd343 100644 --- a/include/linux/kvm.h +++ b/include/linux/kvm.h @@ -116,6 +116,11 @@ struct kvm_run { __u64 cr8; __u64 apic_base; +#ifdef __KVM_S390 + /* the processor status word for s390 */ + __u64 psw_mask; /* psw upper half */ + __u64 psw_addr; /* psw lower half */ +#endif union { /* KVM_EXIT_UNKNOWN */ struct { @@ -167,8 +172,6 @@ struct kvm_run { /* KVM_EXIT_S390_SIEIC */ struct { __u8 icptcode; - __u64 mask; /* psw upper half */ - __u64 addr; /* psw lower half */ __u16 ipa; __u32 ipb; } s390_sieic; @@ -474,6 +477,7 @@ struct kvm_irq_routing { }; #endif +#define KVM_CAP_S390_PSW 42 #ifdef KVM_CAP_MCE /* x86 MCE */ |