KVM: s390: activate GISA for emulated interrupts

"Linux Kernel Mailing List" <[email protected]> Sat, 10 Feb 2018 22:00:23 +0000 (UTC)
Newsgroups gmane.linux.kernel.commits.head
Message-ID <[email protected]>
Web:        https://git.kernel.org/torvalds/c/f180bfdae024b34e71e89dcc82b037dd97f74c3a
Commit:     f180bfdae024b34e71e89dcc82b037dd97f74c3a
Parent:     4b35f65e67ee0e5bc4f394efa14a9fa3917cd2c1
Refname:    refs/heads/master
Author:     Michael Mueller <[email protected]>
AuthorDate: Fri Jun 23 14:46:21 2017 +0200
Committer:  Christian Borntraeger <[email protected]>
CommitDate: Fri Jan 26 14:13:57 2018 +0100

    KVM: s390: activate GISA for emulated interrupts
    
    If the AIV facility is available, a GISA will be used to manage emulated
    adapter interrupts.
    
    Signed-off-by: Michael Mueller <[email protected]>
    Reviewed-by: Halil Pasic <[email protected]>
    Reviewed-by: Christian Borntraeger <[email protected]>
    Reviewed-by: David Hildenbrand <[email protected]>
    Reviewed-by: Cornelia Huck <[email protected]>
    Signed-off-by: Christian Borntraeger <[email protected]>
---
 arch/s390/kvm/interrupt.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/arch/s390/kvm/interrupt.c b/arch/s390/kvm/interrupt.c
index f2dc86884ea4..488ecc7ea2a1 100644
--- a/arch/s390/kvm/interrupt.c
+++ b/arch/s390/kvm/interrupt.c
@@ -2842,7 +2842,13 @@ void kvm_s390_gisa_clear(struct kvm *kvm)
 
 void kvm_s390_gisa_init(struct kvm *kvm)
 {
-	/* not implemented yet */
+	if (!css_general_characteristics.aiv)
+		kvm->arch.gisa = NULL;
+	else {
+		kvm->arch.gisa = &kvm->arch.sie_page2->gisa;
+		VM_EVENT(kvm, 3, "gisa 0x%pK initialized", kvm->arch.gisa);
+		kvm_s390_gisa_clear(kvm);
+	}
 }
 
 void kvm_s390_gisa_destroy(struct kvm *kvm)
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html