[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL v5 29/44] plugins: fix-up handling of internal hostaddr for 32 bit
From: |
Alex Bennée |
Subject: |
[PULL v5 29/44] plugins: fix-up handling of internal hostaddr for 32 bit |
Date: |
Wed, 14 Jul 2021 16:00:21 +0100 |
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
- [PULL v5 22/44] tests/docker: expand fedora package list, (continued)
- [PULL v5 22/44] tests/docker: expand fedora package list, Alex Bennée, 2021/07/14
- [PULL v5 30/44] meson.build: move TCG plugin summary output, Alex Bennée, 2021/07/14
- [PULL v5 20/44] tests/docker: remove mingw packages from Fedora, Alex Bennée, 2021/07/14
- [PULL v5 43/44] docs/devel: Added cache plugin to the plugins docs, Alex Bennée, 2021/07/14
- [PULL v5 41/44] plugins/cache: Enable cache parameterization, Alex Bennée, 2021/07/14
- [PULL v5 31/44] meson.build: relax the libdl test to one for the function dlopen, Alex Bennée, 2021/07/14
- [PULL v5 33/44] configure: don't allow plugins to be enabled for a non-TCG build, Alex Bennée, 2021/07/14
- [PULL v5 19/44] tests/docker: fix mistakes in ubuntu package lists, Alex Bennée, 2021/07/14
- [PULL v5 25/44] tests/docker: expand opensuse-leap package list, Alex Bennée, 2021/07/14
- [PULL v5 21/44] tests/docker: expand centos8 package list, Alex Bennée, 2021/07/14
- [PULL v5 29/44] plugins: fix-up handling of internal hostaddr for 32 bit,
Alex Bennée <=
- [PULL v5 15/44] tests/docker: remove FEATURES env var from templates, Alex Bennée, 2021/07/14
- [PULL v5 27/44] tests/vm: update openbsd to release 6.9, Alex Bennée, 2021/07/14
- [PULL v5 18/44] tests/docker: fix mistakes in fedora package list, Alex Bennée, 2021/07/14
- [PULL v5 16/44] tests/docker: fix sorting in package lists, Alex Bennée, 2021/07/14
- [PULL v5 17/44] tests/docker: fix mistakes in centos package lists, Alex Bennée, 2021/07/14
- [PULL v5 37/44] contrib/plugins: enable -Wall for building plugins, Alex Bennée, 2021/07/14
- [PULL v5 32/44] tcg/plugins: remove some stale entries from the symbol list, Alex Bennée, 2021/07/14
- [PULL v5 35/44] configure: stop user enabling plugins on Windows for now, Alex Bennée, 2021/07/14
- [PULL v5 38/44] contrib/plugins: add execlog to log instruction execution and memory access, Alex Bennée, 2021/07/14
- [PULL v5 28/44] tests/tcg: make test-mmap a little less aggressive, Alex Bennée, 2021/07/14