KVM: s390: define GISA format-0 data structure
authorMichael Mueller <mimu@linux.vnet.ibm.com>
Tue, 30 May 2017 12:26:02 +0000 (14:26 +0200)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Fri, 26 Jan 2018 09:47:29 +0000 (10:47 +0100)
commit19114beb73f774e466d9e39b8e8b961812c9f881
tree97efdd67ed9840d92aa9a104c186ca7c2e61c297
parentc7901a6ebee4b624971361bbd93f21ab0b359786
KVM: s390: define GISA format-0 data structure

In preperation to support pass-through adapter interrupts, the Guest
Interruption State Area (GISA) and the Adapter Interruption Virtualization
(AIV) features will be introduced here.

This patch introduces format-0 GISA (that is defines the struct describing
the GISA, allocates storage for it, and introduces fields for the
GISA address in kvm_s390_sie_block and kvm_s390_vsie).

As the GISA requires storage below 2GB, it is put in sie_page2, which is
already allocated in ZONE_DMA. In addition, The GISA requires alignment to
its integral boundary. This is already naturally aligned via the
padding in the sie_page2.

Signed-off-by: Michael Mueller <mimu@linux.vnet.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.vnet.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.vnet.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/include/asm/kvm_host.h
arch/s390/kvm/kvm-s390.c