aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/include/uapi
diff options
context:
space:
mode:
authorJens Freimann <jfrei@linux.vnet.ibm.com>2013-10-07 10:13:45 -0400
committerChristian Borntraeger <borntraeger@de.ibm.com>2014-01-30 04:25:20 -0500
commitc05c4186bbe4e99d64e8a36f7ca7f480da5d109f (patch)
tree746d5b7f59b3c74668ab2b0abcfb48b64b4512e9 /arch/s390/include/uapi
parent81aa8efe0190cf5bf7eaafb57341cd7d0aea96cd (diff)
KVM: s390: add floating irq controller
This patch adds a floating irq controller as a kvm_device. It will be necessary for migration of floating interrupts as well as for hardening the reset code by allowing user space to explicitly remove all pending floating interrupts. Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'arch/s390/include/uapi')
-rw-r--r--arch/s390/include/uapi/asm/kvm.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/s390/include/uapi/asm/kvm.h b/arch/s390/include/uapi/asm/kvm.h
index d25da598ec62..38d5f98552bb 100644
--- a/arch/s390/include/uapi/asm/kvm.h
+++ b/arch/s390/include/uapi/asm/kvm.h
@@ -16,6 +16,20 @@
16 16
17#define __KVM_S390 17#define __KVM_S390
18 18
19/* Device control API: s390-specific devices */
20#define KVM_DEV_FLIC_GET_ALL_IRQS 1
21#define KVM_DEV_FLIC_ENQUEUE 2
22#define KVM_DEV_FLIC_CLEAR_IRQS 3
23/*
24 * We can have up to 4*64k pending subchannels + 8 adapter interrupts,
25 * as well as up to ASYNC_PF_PER_VCPU*KVM_MAX_VCPUS pfault done interrupts.
26 * There are also sclp and machine checks. This gives us
27 * sizeof(kvm_s390_irq)*(4*65536+8+64*64+1+1) = 72 * 266250 = 19170000
28 * Lets round up to 8192 pages.
29 */
30
31#define KVM_S390_FLIC_MAX_BUFFER 0x2000000
32
19/* for KVM_GET_REGS and KVM_SET_REGS */ 33/* for KVM_GET_REGS and KVM_SET_REGS */
20struct kvm_regs { 34struct kvm_regs {
21 /* general purpose regs for s390 */ 35 /* general purpose regs for s390 */