aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hildenbrand <dahi@linux.vnet.ibm.com>2015-06-23 09:10:51 +0200
committerCornelia Huck <cornelia.huck@de.ibm.com>2015-07-02 15:35:33 +0200
commit55b1b753dff022dcc95123bed35946b4977d31fa (patch)
tree7854c892d57bdfa181b1b68840adc69d81976535
parent6efd2c2a125b4369b8def585b0dac35c849b5eb3 (diff)
s390x/gdb: synchronize cpu state after modifying acrs
Whenever we touch the access control registers, we have to make sure that the values will make it into kvm. Otherwise the change will simply be lost. When synchronizing qemu and kvm, a normal KVM_PUT_RUNTIME_STATE does not take care of these registers. Let's simply trigger a KVM_PUT_FULL_STATE sync, so the values will directly be written to kvm. The performance overhead can be ignored and this is much cleaner than manually writing these registers to kvm via our two supported ways. Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
-rw-r--r--target-s390x/gdbstub.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/target-s390x/gdbstub.c b/target-s390x/gdbstub.c
index ddc14a6cd4..31f204964f 100644
--- a/target-s390x/gdbstub.c
+++ b/target-s390x/gdbstub.c
@@ -92,6 +92,7 @@ static int cpu_write_ac_reg(CPUS390XState *env, uint8_t *mem_buf, int n)
switch (n) {
case S390_A0_REGNUM ... S390_A15_REGNUM:
env->aregs[n] = ldl_p(mem_buf);
+ cpu_synchronize_post_init(ENV_GET_CPU(env));
return 4;
default:
return 0;