On Sat, Sep 03, 2011 at 02:48:25PM +0100, Peter Maydell wrote:
Fix format string errors causing compile failure on 32 bit hosts
when spice is enabled.
Patch looks good.
Reviewed-by: Alon Levy al...@redhat.com
Signed-off-by: Peter Maydell peter.mayd...@linaro.org
---
This fixes the easy parts of the 32 bit compile failures with
spice enabled. It leaves the following two warnings:
hw/qxl.c: In function 'interface_release_resource':
hw/qxl.c:627:46: error: cast to pointer from integer of different size
hw/qxl.c: In function 'qxl_phys2virt':
hw/qxl.c:1003:16: error: cast to pointer from integer of different size
which appear to be making deeper pointers are 64 bits assumptions
that I don't know enough about the spice code to suggest fixes for.
(Throwing in (intptr_t) casts suppresses the warning but seems a
bit icky...)
Could somebody else take a look at those, please?
Spice server doesn't work for 32 bit machines. So regardless of the
fix it should not be possible to enable it for 32 bit builds. I think
if it were to work then the casts you suggest would be the simplest
assumption, keeping the qxl device structs the same (64 bit address
fields).
hw/qxl-logger.c |2 +-
hw/qxl.c|8
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/hw/qxl-logger.c b/hw/qxl-logger.c
index 74cadba..367aad1 100644
--- a/hw/qxl-logger.c
+++ b/hw/qxl-logger.c
@@ -224,7 +224,7 @@ void qxl_log_command(PCIQXLDevice *qxl, const char *ring,
QXLCommandExt *ext)
if (!qxl-cmdlog) {
return;
}
-fprintf(stderr, %ld qxl-%d/%s:, qemu_get_clock_ns(vm_clock),
+fprintf(stderr, % PRId64 qxl-%d/%s:, qemu_get_clock_ns(vm_clock),
qxl-id, ring);
fprintf(stderr, cmd @ 0x% PRIx64 %s%s, ext-cmd.data,
qxl_name(qxl_type, ext-cmd.type),
diff --git a/hw/qxl.c b/hw/qxl.c
index 45e2401..1fe0b53 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -959,7 +959,7 @@ static void qxl_add_memslot(PCIQXLDevice *d, uint32_t
slot_id, uint64_t delta,
memslot.generation = d-rom-slot_generation = 0;
qxl_rom_set_dirty(d);
-dprint(d, 1, %s: slot %d: host virt 0x% PRIx64 - 0x% PRIx64 \n,
+dprint(d, 1, %s: slot %d: host virt 0x%lx - 0x%lx\n,
__FUNCTION__, memslot.slot_id,
memslot.virt_start, memslot.virt_end);
@@ -1090,8 +1090,8 @@ static void qxl_set_mode(PCIQXLDevice *d, int modenr,
int loadvm)
.mem= devmem + d-shadow_rom.draw_area_offset,
};
-dprint(d, 1, %s: mode %d [ %d x %d @ %d bpp devmem 0x%lx ]\n,
__FUNCTION__,
- modenr, mode-x_res, mode-y_res, mode-bits, devmem);
+dprint(d, 1, %s: mode %d [ %d x %d @ %d bpp devmem 0x% PRIx64 ]\n,
+ __func__, modenr, mode-x_res, mode-y_res, mode-bits, devmem);
if (!loadvm) {
qxl_hard_reset(d, 0);
}
@@ -1229,7 +1229,7 @@ async_common:
break;
case QXL_IO_LOG:
if (d-guestdebug) {
-fprintf(stderr, qxl/guest-%d: %ld: %s, d-id,
+fprintf(stderr, qxl/guest-%d: % PRId64 : %s, d-id,
qemu_get_clock_ns(vm_clock), d-ram-log_buf);
}
break;
--
1.7.4.1