All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: peter.maydell@linaro.org
Cc: "Richard Henderson" <richard.henderson@linaro.org>,
	qemu-devel@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
	"Alexandre Iooss" <erdnaxe@crans.org>,
	"Mahmoud Mandour" <ma.mandourr@gmail.com>,
	"Alex Bennée" <alex.bennee@linaro.org>
Subject: [PULL v5 29/44] plugins: fix-up handling of internal hostaddr for 32 bit
Date: Wed, 14 Jul 2021 16:00:21 +0100	[thread overview]
Message-ID: <20210714150036.21060-30-alex.bennee@linaro.org> (raw)
In-Reply-To: <20210714150036.21060-1-alex.bennee@linaro.org>

The compiler rightly complains when we build on 32 bit that casting
uint64_t into a void is a bad idea. We are really dealing with a host
pointer at this point so treat it as such. This does involve
a uintptr_t cast of the result of the TLB addend as we know that has
to point to the host memory.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20210709143005.1554-28-alex.bennee@linaro.org>

diff --git a/include/qemu/plugin-memory.h b/include/qemu/plugin-memory.h
index b36def27d7..0f59226727 100644
--- a/include/qemu/plugin-memory.h
+++ b/include/qemu/plugin-memory.h
@@ -18,7 +18,7 @@ struct qemu_plugin_hwaddr {
             hwaddr    offset;
         } io;
         struct {
-            uint64_t hostaddr;
+            void *hostaddr;
         } ram;
     } v;
 };
diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c
index b6d5fc6326..b4e15b6aad 100644
--- a/accel/tcg/cputlb.c
+++ b/accel/tcg/cputlb.c
@@ -1728,7 +1728,7 @@ bool tlb_plugin_lookup(CPUState *cpu, target_ulong addr, int mmu_idx,
             data->v.io.offset = (iotlbentry->addr & TARGET_PAGE_MASK) + addr;
         } else {
             data->is_io = false;
-            data->v.ram.hostaddr = addr + tlbe->addend;
+            data->v.ram.hostaddr = (void *)((uintptr_t)addr + tlbe->addend);
         }
         return true;
     } else {
diff --git a/plugins/api.c b/plugins/api.c
index 332e2c60e2..78b563c5c5 100644
--- a/plugins/api.c
+++ b/plugins/api.c
@@ -308,11 +308,11 @@ uint64_t qemu_plugin_hwaddr_phys_addr(const struct qemu_plugin_hwaddr *haddr)
         if (!haddr->is_io) {
             RAMBlock *block;
             ram_addr_t offset;
-            void *hostaddr = (void *) haddr->v.ram.hostaddr;
+            void *hostaddr = haddr->v.ram.hostaddr;
 
             block = qemu_ram_block_from_host(hostaddr, false, &offset);
             if (!block) {
-                error_report("Bad ram pointer %"PRIx64"", haddr->v.ram.hostaddr);
+                error_report("Bad host ram pointer %p", haddr->v.ram.hostaddr);
                 abort();
             }
 
-- 
2.20.1



  parent reply	other threads:[~2021-07-14 15:29 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-14 14:59 [PULL v5 00/44] testing, build and plugin updates Alex Bennée
2021-07-14 14:59 ` [PULL v5 01/44] Jobs based on custom runners: documentation and configuration placeholder Alex Bennée
2021-07-14 14:59 ` [PULL v5 02/44] Jobs based on custom runners: build environment docs and playbook Alex Bennée
2021-07-14 14:59 ` [PULL v5 03/44] Jobs based on custom runners: docs and gitlab-runner setup playbook Alex Bennée
2021-07-14 14:59 ` [PULL v5 04/44] Jobs based on custom runners: add job definitions for QEMU's machines Alex Bennée
2021-07-14 14:59 ` [PULL v5 05/44] tests/tcg: also disable the signals test for plugins Alex Bennée
2021-07-14 14:59 ` [PULL v5 06/44] meson: fix condition for io_uring stubs Alex Bennée
2021-07-14 14:59 ` [PULL v5 07/44] disable modular TCG on Darwin Alex Bennée
2021-07-14 15:00 ` [PULL v5 08/44] build: validate that system capstone works before using it Alex Bennée
2021-07-14 15:00 ` [PULL v5 09/44] gitlab: support for FreeBSD 12, 13 and macOS 11 via cirrus-run Alex Bennée
2021-07-14 15:00 ` [PULL v5 10/44] cirrus: delete FreeBSD and macOS jobs Alex Bennée
2021-07-14 15:00 ` [PULL v5 11/44] hw/usb/ccid: remove references to NSS Alex Bennée
2021-07-14 15:00 ` [PULL v5 12/44] tests/docker: don't use BUILDKIT in GitLab either Alex Bennée
2021-07-14 15:00 ` [PULL v5 13/44] tests/docker: use project specific container registries Alex Bennée
2021-07-14 15:00 ` [PULL v5 14/44] tests/docker: use explicit docker.io registry Alex Bennée
2021-07-14 15:00 ` [PULL v5 15/44] tests/docker: remove FEATURES env var from templates Alex Bennée
2021-07-14 15:00 ` [PULL v5 16/44] tests/docker: fix sorting in package lists Alex Bennée
2021-07-14 15:00 ` [PULL v5 17/44] tests/docker: fix mistakes in centos " Alex Bennée
2021-07-14 15:00 ` [PULL v5 18/44] tests/docker: fix mistakes in fedora package list Alex Bennée
2021-07-14 15:00 ` [PULL v5 19/44] tests/docker: fix mistakes in ubuntu package lists Alex Bennée
2021-07-14 15:00 ` [PULL v5 20/44] tests/docker: remove mingw packages from Fedora Alex Bennée
2021-07-14 15:00 ` [PULL v5 21/44] tests/docker: expand centos8 package list Alex Bennée
2021-07-14 15:00 ` [PULL v5 22/44] tests/docker: expand fedora " Alex Bennée
2021-07-14 15:00 ` [PULL v5 23/44] tests/docker: expand ubuntu1804 " Alex Bennée
2021-07-14 15:00 ` [PULL v5 24/44] tests/docker: expand ubuntu2004 " Alex Bennée
2021-07-14 15:00 ` [PULL v5 25/44] tests/docker: expand opensuse-leap " Alex Bennée
2021-07-14 15:00 ` [PULL v5 26/44] tests/vm: update NetBSD to 9.2 Alex Bennée
2021-07-14 15:00 ` [PULL v5 27/44] tests/vm: update openbsd to release 6.9 Alex Bennée
2021-07-14 15:00 ` [PULL v5 28/44] tests/tcg: make test-mmap a little less aggressive Alex Bennée
2021-07-14 15:00 ` Alex Bennée [this message]
2021-07-14 15:00 ` [PULL v5 30/44] meson.build: move TCG plugin summary output Alex Bennée
2021-07-14 15:00 ` [PULL v5 31/44] meson.build: relax the libdl test to one for the function dlopen Alex Bennée
2021-07-14 15:00 ` [PULL v5 32/44] tcg/plugins: remove some stale entries from the symbol list Alex Bennée
2021-07-14 15:00 ` [PULL v5 33/44] configure: don't allow plugins to be enabled for a non-TCG build Alex Bennée
2021-07-14 15:00 ` [PULL v5 34/44] configure: add an explicit static and plugins check Alex Bennée
2021-07-14 15:00 ` [PULL v5 35/44] configure: stop user enabling plugins on Windows for now Alex Bennée
2021-07-14 15:00 ` [PULL v5 36/44] tcg/plugins: enable by default for most TCG builds Alex Bennée
2021-07-14 15:00 ` [PULL v5 37/44] contrib/plugins: enable -Wall for building plugins Alex Bennée
2021-07-14 15:00 ` [PULL v5 38/44] contrib/plugins: add execlog to log instruction execution and memory access Alex Bennée
2021-07-14 15:00 ` [PULL v5 39/44] docs/devel: tcg-plugins: add execlog plugin description Alex Bennée
2021-07-14 15:00 ` [PULL v5 40/44] plugins: Added a new cache modelling plugin Alex Bennée
2021-07-14 15:00 ` [PULL v5 41/44] plugins/cache: Enable cache parameterization Alex Bennée
2021-07-14 15:00 ` [PULL v5 42/44] plugins/cache: Added FIFO and LRU eviction policies Alex Bennée
2021-07-14 15:00 ` [PULL v5 43/44] docs/devel: Added cache plugin to the plugins docs Alex Bennée
2021-07-14 15:00 ` [PULL v5 44/44] MAINTAINERS: Added myself as a reviewer for TCG Plugins Alex Bennée
2021-07-15 18:05 ` [PULL v5 00/44] testing, build and plugin updates Peter Maydell

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=20210714150036.21060-30-alex.bennee@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=erdnaxe@crans.org \
    --cc=ma.mandourr@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.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 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.