* [Qemu-devel] [PATCH] hw/qxl: Fix format string errors
@ 2011-09-03 13:48 Peter Maydell
2011-09-04 11:44 ` Alon Levy
0 siblings, 1 reply; 2+ messages in thread
From: Peter Maydell @ 2011-09-03 13:48 UTC (permalink / raw)
To: qemu-devel; +Cc: Gerd Hoffmann, patches
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(-)
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
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PATCH] hw/qxl: Fix format string errors
2011-09-03 13:48 [Qemu-devel] [PATCH] hw/qxl: Fix format string errors Peter Maydell
@ 2011-09-04 11:44 ` Alon Levy
0 siblings, 0 replies; 2+ messages in thread
From: Alon Levy @ 2011-09-04 11:44 UTC (permalink / raw)
To: Peter Maydell; +Cc: patches, qemu-devel, Gerd Hoffmann
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
>
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2011-09-04 11:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-03 13:48 [Qemu-devel] [PATCH] hw/qxl: Fix format string errors Peter Maydell
2011-09-04 11:44 ` Alon Levy
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.