[PATCH v1 0/2] KVM: s390: vsie: simulate VCPU SIE entry/exit

David Hildenbrand
2018-08-09T08:05:59Z

While discussing AP changes, we discovered that we will have to force
a CPU using the vSIE to regenerate/reload shadow data structures. For now,
we have no mechanism for that.

E.g. when clearing AP masks later, we could still have a vSIE CPU making
use of AP adapters as the masks might not be considered yet in the vSIE
data structures. We need a way to block entering the vSIE and regenerate
all shadow data structures once done.

Looks like we can achieve that by simply simulating an ordinary SIE
entry/exit in the VCPU sie control block (when executing sie64 in context
of the vSIE).

This way, we can support blocking and also synchronous CPU requests.

Only compile tested.

RFC -> v1:
- Move entry/exit simulation right to the sie64 code to minimize latency
- Added R-b's, dropped Tested-by.

David Hildenbrand (2):
KVM: s390: vsie: simulate VCPU SIE entry/exit
KVM: s390: introduce and use KVM_REQ_VSIE_RESTART

arch/s390/include/asm/kvm_host.h | 1 +
arch/s390/kvm/kvm-s390.c | 16 ++++++++++++++--
arch/s390/kvm/kvm-s390.h | 1 +
arch/s390/kvm/vsie.c | 21 +++++++++++++++++----
4 files changed, 33 insertions(+), 6 deletions(-)

--
2.17.1