aboutsummaryrefslogtreecommitdiff
path: root/target-s390x
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 /target-s390x
parent6efd2c2a125b4369b8def585b0dac35c849b5eb3 (diff)
downloadqemu-55b1b753dff022dcc95123bed35946b4977d31fa.zip
qemu-55b1b753dff022dcc95123bed35946b4977d31fa.tar.gz
qemu-55b1b753dff022dcc95123bed35946b4977d31fa.tar.bz2
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>
Diffstat (limited to 'target-s390x')
-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 ddc14a6..31f2049 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;