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:
>
next prev parent 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).