Message ID | 1315057705-4981-1-git-send-email-peter.maydell@linaro.org |
---|---|
State | Accepted |
Commit | a680f7e7cbe8bebd15de2d974989d4e58810837d |
Headers | show |
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 <alevy@redhat.com> > Signed-off-by: Peter Maydell <peter.maydell@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 > >
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;
Fix format string errors causing compile failure on 32 bit hosts when spice is enabled. Signed-off-by: Peter Maydell <peter.maydell@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? hw/qxl-logger.c | 2 +- hw/qxl.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-)