qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Weil <sw@weilnetz.de>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org, Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] hw/qxl.c: Fix compilation failures on 32 bit hosts
Date: Fri, 16 Mar 2012 15:37:27 +0100	[thread overview]
Message-ID: <4F635027.20009@weilnetz.de> (raw)
In-Reply-To: <1331905804-11240-1-git-send-email-peter.maydell@linaro.org>

Am 16.03.2012 14:50, schrieb Peter Maydell:
> Fix compilation failures on 32 bit hosts (cast from pointer to
> integer of different size; %ld expects 'long int' not uint64_t).
>
> Reported-by: Steve Langasek<steve.langasek@canonical.com>
> Signed-off-by: Peter Maydell<peter.maydell@linaro.org>
> ---
>   hw/qxl.c |   16 ++++++++--------
>   1 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/hw/qxl.c b/hw/qxl.c
> index e17b0e3..47dc383 100644
> --- a/hw/qxl.c
> +++ b/hw/qxl.c
> @@ -149,7 +149,7 @@ void qxl_spice_update_area(PCIQXLDevice *qxl, uint32_t surface_id,
>       } else {
>           assert(cookie != NULL);
>           spice_qxl_update_area_async(&qxl->ssd.qxl, surface_id, area,
> -                                    clear_dirty_region, (uint64_t)cookie);
> +                                    clear_dirty_region, (uintptr_t)cookie);
>       }
>   }
>
> @@ -171,7 +171,7 @@ static void qxl_spice_destroy_surface_wait(PCIQXLDevice *qxl, uint32_t id,
>           cookie = qxl_cookie_new(QXL_COOKIE_TYPE_IO,
>                                   QXL_IO_DESTROY_SURFACE_ASYNC);
>           cookie->u.surface_id = id;
> -        spice_qxl_destroy_surface_async(&qxl->ssd.qxl, id, (uint64_t)cookie);
> +        spice_qxl_destroy_surface_async(&qxl->ssd.qxl, id, (uintptr_t)cookie);
>       } else {
>           qxl->ssd.worker->destroy_surface_wait(qxl->ssd.worker, id);
>           qxl_spice_destroy_surface_wait_complete(qxl, id);
> @@ -181,8 +181,8 @@ static void qxl_spice_destroy_surface_wait(PCIQXLDevice *qxl, uint32_t id,
>   static void qxl_spice_flush_surfaces_async(PCIQXLDevice *qxl)
>   {
>       spice_qxl_flush_surfaces_async(&qxl->ssd.qxl,
> -        (uint64_t)qxl_cookie_new(QXL_COOKIE_TYPE_IO,
> -                                 QXL_IO_FLUSH_SURFACES_ASYNC));
> +        (uintptr_t)qxl_cookie_new(QXL_COOKIE_TYPE_IO,
> +                                  QXL_IO_FLUSH_SURFACES_ASYNC));
>   }
>
>   void qxl_spice_loadvm_commands(PCIQXLDevice *qxl, struct QXLCommandExt *ext,
> @@ -213,8 +213,8 @@ static void qxl_spice_destroy_surfaces(PCIQXLDevice *qxl, qxl_async_io async)
>   {
>       if (async) {
>           spice_qxl_destroy_surfaces_async(&qxl->ssd.qxl,
> -                (uint64_t)qxl_cookie_new(QXL_COOKIE_TYPE_IO,
> -                                         QXL_IO_DESTROY_ALL_SURFACES_ASYNC));
> +                (uintptr_t)qxl_cookie_new(QXL_COOKIE_TYPE_IO,
> +                                          QXL_IO_DESTROY_ALL_SURFACES_ASYNC));
>       } else {
>           qxl->ssd.worker->destroy_surfaces(qxl->ssd.worker);
>           qxl_spice_destroy_surfaces_complete(qxl);
> @@ -743,7 +743,7 @@ static void interface_async_complete_io(PCIQXLDevice *qxl, QXLCookie *cookie)
>       }
>       if (cookie&&  current_async != cookie->io) {
>           fprintf(stderr,
> -                "qxl: %s: error: current_async = %d != %ld = cookie->io\n",
> +                "qxl: %s: error: current_async = %d != %" PRId64 " = cookie->io\n",
>                   __func__, current_async, cookie->io);
>    

current_async is uint32_t,  so maybe you can also replace %d by %" PRIu32 ".
Is io unsigned (I don't have the headers, but think it is)? Then PRIu64
would be better.

With these modifications you may add

Reviewed-by: Stefan Weil <sw@weilnetz.de>

Cheers,
Stefan

>       }
>       switch (current_async) {
> @@ -812,7 +812,7 @@ static void interface_update_area_complete(QXLInstance *sin,
>   static void interface_async_complete(QXLInstance *sin, uint64_t cookie_token)
>   {
>       PCIQXLDevice *qxl = container_of(sin, PCIQXLDevice, ssd.qxl);
> -    QXLCookie *cookie = (QXLCookie *)cookie_token;
> +    QXLCookie *cookie = (QXLCookie *)(uintptr_t)cookie_token;
>
>       switch (cookie->type) {
>       case QXL_COOKIE_TYPE_IO:
>    

  reply	other threads:[~2012-03-16 14:37 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-16 13:50 [Qemu-devel] [PATCH] hw/qxl.c: Fix compilation failures on 32 bit hosts Peter Maydell
2012-03-16 14:37 ` Stefan Weil [this message]
2012-03-16 14:56   ` Peter Maydell
2012-03-19 12:02 ` Gerd Hoffmann
2012-03-19 13:03   ` Gerd Hoffmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F635027.20009@weilnetz.de \
    --to=sw@weilnetz.de \
    --cc=kraxel@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).