]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: s390: pv: make use of ultravisor AIV support
authorMichael Mueller <mimu@linux.ibm.com>
Wed, 9 Feb 2022 15:22:17 +0000 (16:22 +0100)
committerChristian Borntraeger <borntraeger@linux.ibm.com>
Fri, 25 Feb 2022 13:30:13 +0000 (14:30 +0100)
commitb47687197a974518777ee77c1b459712c073b6dd
tree5a48860aab32440083f3d2bbe0077215aad15ee5
parentdf6221129e336ce48e272ba06a4be2d29f3dd4cd
KVM: s390: pv: make use of ultravisor AIV support

This patch enables the ultravisor adapter interruption vitualization
support indicated by UV feature BIT_UV_FEAT_AIV. This allows ISC
interruption injection directly into the GISA IPM for PV kvm guests.

Hardware that does not support this feature will continue to use the
UV interruption interception method to deliver ISC interruptions to
PV kvm guests. For this purpose, the ECA_AIV bit for all guest cpus
will be cleared and the GISA will be disabled during PV CPU setup.

In addition a check in __inject_io() has been removed. That reduces the
required instructions for interruption handling for PV and traditional
kvm guests.

Signed-off-by: Michael Mueller <mimu@linux.ibm.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Link: https://lore.kernel.org/r/20220209152217.1793281-2-mimu@linux.ibm.com
Reviewed-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@linux.ibm.com>
arch/s390/include/asm/uv.h
arch/s390/kvm/interrupt.c
arch/s390/kvm/kvm-s390.c
arch/s390/kvm/kvm-s390.h