Skip to content

Commit

Permalink
monitor.c: Use ld*_p() instead of ld*_raw()
Browse files Browse the repository at this point in the history
The monitor code for doing a memory_dump() was using ld*_raw() to do
target-CPU accesses out of a local buf[] array. The correct functions
for this purpose are ld*_p(), which take a host pointer, rather than
ld*_raw(), which take an integer representing a guest address and
are somewhat meaningless in softmmu configurations. Nobody noticed
because for softmmu the _raw functions are the same as ldl_p but
with some extra casts thrown in. Switch to using the correct functions
instead.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1421334118-3287-3-git-send-email-peter.maydell@linaro.org
  • Loading branch information
pm215 committed Jan 20, 2015
1 parent 0c021c1 commit 24e6030
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions monitor.c
Expand Up @@ -1292,16 +1292,16 @@ static void memory_dump(Monitor *mon, int count, int format, int wsize,
switch(wsize) {
default:
case 1:
v = ldub_raw(buf + i);
v = ldub_p(buf + i);
break;
case 2:
v = lduw_raw(buf + i);
v = lduw_p(buf + i);
break;
case 4:
v = (uint32_t)ldl_raw(buf + i);
v = (uint32_t)ldl_p(buf + i);
break;
case 8:
v = ldq_raw(buf + i);
v = ldq_p(buf + i);
break;
}
monitor_printf(mon, " ");
Expand Down

0 comments on commit 24e6030

Please sign in to comment.