]> 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)
commit54036e1789b84e66fe76e9cb4e3a5776318ae1c1
tree5a48860aab32440083f3d2bbe0077215aad15ee5
parent34c8331202dd1e0c2f6b54758c25b06934751594
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