diff options
author | Alexander Graf <agraf@suse.de> | 2014-04-07 16:48:42 +0200 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2014-04-08 11:20:05 +0200 |
commit | 6a2b3d89fa49ec060db646d196864a8fd15c10cf (patch) | |
tree | 3057d044d8cb5116608088baa1ff8be28e1493f0 | |
parent | 05edc26c61d416831822b3186df099e8e21745b9 (diff) | |
download | qemu-6a2b3d89fa49ec060db646d196864a8fd15c10cf.zip qemu-6a2b3d89fa49ec060db646d196864a8fd15c10cf.tar.gz qemu-6a2b3d89fa49ec060db646d196864a8fd15c10cf.tar.bz2 |
ppce500_spin: Initialize struct properly
The spinning struct is in guest endianness, so we need to initialize
its variables in guest endianness too.
This fixes booting e500 guests with SMP on x86 for me.
Signed-off-by: Alexander Graf <agraf@suse.de>
-rw-r--r-- | hw/ppc/ppce500_spin.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/hw/ppc/ppce500_spin.c b/hw/ppc/ppce500_spin.c index f9fdc8c..d49f2b8 100644 --- a/hw/ppc/ppce500_spin.c +++ b/hw/ppc/ppce500_spin.c @@ -65,9 +65,9 @@ static void spin_reset(void *opaque) for (i = 0; i < MAX_CPUS; i++) { SpinInfo *info = &s->spin[i]; - info->pir = i; - info->r3 = i; - info->addr = 1; + stl_p(&info->pir, i); + stq_p(&info->r3, i); + stq_p(&info->addr, 1); } } |