]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: s390: enable Transactional Execution
authorMichael Mueller <mimu@linux.vnet.ibm.com>
Fri, 28 Jun 2013 11:30:24 +0000 (13:30 +0200)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Fri, 17 Jan 2014 12:12:01 +0000 (13:12 +0100)
commit1f24d0524e8f30fb2b8c6819db81ce3554175d11
tree383c77a8523822b940c68a42a323d4da949697d2
parenta1907ee7054501f4981216ca2050f8ffbb21afde
KVM: s390: enable Transactional Execution

This patch enables transactional execution for KVM guests
on s390 systems zec12 or later.

We rework the allocation of the page containing the sie_block
to also back the Interception Transaction Diagnostic Block.
If available the TE facilities will be enabled.

Setting bit 73 and 50 in vfacilities bitmask reveals the HW
facilities Transactional Memory and Constraint Transactional
Memory respectively to the KVM guest.

Furthermore, the patch restores the Program-Interruption TDB
from the Interception TDB in case a program interception has
occurred and the ITDB has a valid format.

Signed-off-by: Michael Mueller <mimu@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/include/asm/kvm_host.h
arch/s390/kvm/intercept.c
arch/s390/kvm/kvm-s390.c
arch/s390/kvm/kvm-s390.h