Re: [PATCH v4 14/36] KVM: s390: protvirt: Implement interrupt injection

Cornelia Huck
2020-02-25T12:08:05Z

On Mon, 24 Feb 2020 06:40:45 -0500
Christian Borntraeger <borntraeger@de.ibm.com> wrote:

> From: Michael Mueller <mimu@linux.ibm.com>
>
> This defines the necessary data structures in the SIE control block to
> inject machine checks,external and I/O interrupts. We first define the
> the interrupt injection control, which defines the next interrupt to
> inject. Then we define the fields that contain the payload for machine
> checks,external and I/O interrupts.
> This is then used to implement interruption injection for the following
> list of interruption types:
>
> - I/O (uses inject io interruption)
> __deliver_io
>
> - External (uses inject external interruption)
> __deliver_cpu_timer
> __deliver_ckc
> __deliver_emergency_signal
> __deliver_external_call
>
> - cpu restart (uses inject restart interruption)
> __deliver_restart
>
> - machine checks (uses mcic, failing address and external damage)
> __write_machine_check
>
> Please note that posted interrupts (GISA) are not used for protected
> guests as of today.
>
> The service interrupt is handled in a followup patch.
>
> Signed-off-by: Michael Mueller <mimu@linux.ibm.com>
> Reviewed-by: Thomas Huth <thuth@redhat.com>
> [borntraeger@de.ibm.com: patch merging, splitting, fixing]
> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
> ---
> arch/s390/include/asm/kvm_host.h | 62 +++++++++++++----
> arch/s390/kvm/interrupt.c | 115 +++++++++++++++++++++++--------
> 2 files changed, 138 insertions(+), 39 deletions(-)

Reviewed-by: Cornelia Huck <cohuck@redhat.com>