]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit - arch/s390/kvm/interrupt.c
KVM: s390: add the GIB and its related life-cyle functions
authorMichael Mueller <mimu@linux.ibm.com>
Thu, 31 Jan 2019 08:52:40 +0000 (09:52 +0100)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Tue, 5 Feb 2019 13:29:23 +0000 (14:29 +0100)
commit1282c21eb3dac324b8531bf2e0e0fbd9d5b6516b
tree36cc203a721dea24ecd6b26d844fd7c448134391
parent3dec19221788ec29fff91f3a6bebfc7b8132b0a1
KVM: s390: add the GIB and its related life-cyle functions

The Guest Information Block (GIB) links the GISA of all guests
that have adapter interrupts pending. These interrupts cannot be
delivered because all vcpus of these guests are currently in WAIT
state or have masked the respective Interruption Sub Class (ISC).
If enabled, a GIB alert is issued on the host to schedule these
guests to run suitable vcpus to consume the pending interruptions.

This mechanism allows to process adapter interrupts for currently
not running guests.

The GIB is created during host initialization and associated with
the Adapter Interruption Facility in case an Adapter Interruption
Virtualization Facility is available.

The GIB initialization and thus the activation of the related code
will be done in an upcoming patch of this series.

Signed-off-by: Michael Mueller <mimu@linux.ibm.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Acked-by: Halil Pasic <pasic@linux.ibm.com>
Message-Id: <20190131085247.13826-10-mimu@linux.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/include/asm/kvm_host.h
arch/s390/kvm/interrupt.c
arch/s390/kvm/kvm-s390.c
arch/s390/kvm/kvm-s390.h