qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] hw/qxl: Fix format string errors


From: Alon Levy
Subject: Re: [Qemu-devel] [PATCH] hw/qxl: Fix format string errors
Date: Sun, 4 Sep 2011 14:44:56 +0300
User-agent: Mutt/1.5.21 (2010-09-15)

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 <address@hidden>

> Signed-off-by: Peter Maydell <address@hidden>
> ---
> 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
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]