From: "Jason J. Herne" <jjhe...@us.ibm.com>

Some S390 code paths do not need to synchronize the full register state.
This patch changes those paths to only synchronize the runtime register set.

Signed-off-by: Jason J. Herne <jjhe...@us.ibm.com>
Reviewed-by: Christian Borntraeger <borntrae...@de.ibm.com>
---
 target-s390x/kvm.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index ad978ba..b38765d 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -337,7 +337,7 @@ static int kvm_sclp_service_call(CPUS390XState *env, struct 
kvm_run *run,
     uint64_t code;
     int r = 0;
 
-    cpu_synchronize_state(env, KVM_REGSYNC_FULL_STATE);
+    cpu_synchronize_state(env, KVM_REGSYNC_RUNTIME_STATE);
     sccb = env->regs[ipbh0 & 0xf];
     code = env->regs[(ipbh0 & 0xf0) >> 4];
 
@@ -371,7 +371,7 @@ static int handle_priv(CPUS390XState *env, struct kvm_run 
*run, uint8_t ipa1)
 
 static int handle_hypercall(CPUS390XState *env, struct kvm_run *run)
 {
-    cpu_synchronize_state(env, KVM_REGSYNC_FULL_STATE);
+    cpu_synchronize_state(env, KVM_REGSYNC_RUNTIME_STATE);
     env->regs[2] = s390_virtio_hypercall(env, env->regs[2], env->regs[1]);
 
     return 0;
@@ -444,7 +444,7 @@ static int handle_sigp(CPUS390XState *env, struct kvm_run 
*run, uint8_t ipa1)
     S390CPU *target_cpu;
     CPUS390XState *target_env;
 
-    cpu_synchronize_state(env, KVM_REGSYNC_FULL_STATE);
+    cpu_synchronize_state(env, KVM_REGSYNC_RUNTIME_STATE);
 
     /* get order code */
     order_code = run->s390_sieic.ipb >> 28;
-- 
1.7.9.5


Reply via email to