diff options
author | David Hildenbrand <dahi@linux.vnet.ibm.com> | 2015-06-23 09:10:51 +0200 |
---|---|---|
committer | Cornelia Huck <cornelia.huck@de.ibm.com> | 2015-07-02 15:35:33 +0200 |
commit | 55b1b753dff022dcc95123bed35946b4977d31fa (patch) | |
tree | 7854c892d57bdfa181b1b68840adc69d81976535 /target-s390x/gdbstub.c | |
parent | 6efd2c2a125b4369b8def585b0dac35c849b5eb3 (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>
Diffstat (limited to 'target-s390x/gdbstub.c')
-rw-r--r-- | target-s390x/gdbstub.c | 1 |
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; |