KVM: s390: introduce adapter interrupt inject function
authorYi Min Zhao <zyimin@linux.vnet.ibm.com>
Mon, 20 Feb 2017 02:15:01 +0000 (10:15 +0800)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Thu, 6 Apr 2017 11:15:37 +0000 (13:15 +0200)
commita8920950131b1394f9e99ff57a5cf5ceeb0cc25c
tree1aa07375bfc5eaa1726c0c78f87858a9c75452b6
parent519783935451764b397f2a712de5ea778ff77fdf
KVM: s390: introduce adapter interrupt inject function

Inject adapter interrupts on a specified adapter which allows to
retrieve the adapter flags, e.g. if the adapter is subject to AIS
facility or not. And add documentation for this interface.

For adapters subject to AIS, handle the airq injection suppression
for a given ISC according to the interruption mode:
- before injection, if NO-Interruptions Mode, just return 0 and
  suppress, otherwise, allow the injection.
- after injection, if SINGLE-Interruption Mode, change it to
  NO-Interruptions Mode to suppress the following interrupts.

Besides, add tracepoint for suppressed airq and AIS mode transitions.

Signed-off-by: Yi Min Zhao <zyimin@linux.vnet.ibm.com>
Signed-off-by: Fei Li <sherrylf@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Documentation/virtual/kvm/devices/s390_flic.txt
arch/s390/include/uapi/asm/kvm.h
arch/s390/kvm/interrupt.c
arch/s390/kvm/trace-s390.h