diff options
author | Thomas Huth <thuth@redhat.com> | 2016-03-02 21:19:21 +0100 |
---|---|---|
committer | David Gibson <david@gibson.dropbear.id.au> | 2016-03-16 09:55:05 +1100 |
commit | 1e440cbc99d810ac8153619e6fbee3d7dfaf1893 (patch) | |
tree | be11fc834b2227b3e3397082cce58aedb8fd757a /target-ppc | |
parent | d6f1445fafa8dcb578c90e7b475fd4728abd99da (diff) | |
download | qemu-1e440cbc99d810ac8153619e6fbee3d7dfaf1893.zip |
ppc: Fix migration of the TAR SPR
The TAR special purpose register currently does not get migrated
under KVM because it does not get synchronized with the kernel.
Use spr_register_kvm() instead of spr_register() to fix this issue.
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'target-ppc')
-rw-r--r-- | target-ppc/translate_init.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c index f72148cc22..48a163511c 100644 --- a/target-ppc/translate_init.c +++ b/target-ppc/translate_init.c @@ -7714,10 +7714,10 @@ static void spr_write_tar(DisasContext *ctx, int sprn, int gprn) static void gen_spr_power8_tce_address_control(CPUPPCState *env) { - spr_register(env, SPR_TAR, "TAR", - &spr_read_tar, &spr_write_tar, - &spr_read_generic, &spr_write_generic, - 0x00000000); + spr_register_kvm(env, SPR_TAR, "TAR", + &spr_read_tar, &spr_write_tar, + &spr_read_generic, &spr_write_generic, + KVM_REG_PPC_TAR, 0x00000000); } static void spr_read_tm(DisasContext *ctx, int gprn, int sprn) |