[Top][All Lists]

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

[Qemu-devel] [PATCH] exec: Fix prototype of phys_mem_set_alloc and relat

From: Stefan Weil
Subject: [Qemu-devel] [PATCH] exec: Fix prototype of phys_mem_set_alloc and related functions
Date: Sun, 29 Sep 2013 20:56:45 +0200

phys_mem_alloc and its assigned values qemu_anon_ram_alloc and
legacy_s390_alloc must have identical argument lists.

legacy_s390_alloc uses the size parameter to call mmap, so size_t is
good enough for all of them.

This patch fixes compiler errors on i686 Linux hosts:

  CC    alpha-softmmu/exec.o
exec.c:752:51: error:
 initialization from incompatible pointer type [-Werror]
exec.c: In function 'qemu_ram_alloc_from_ptr':
exec.c:1139:32: error:
 comparison of distinct pointer types lacks a cast [-Werror]
exec.c: In function 'qemu_ram_remap':
exec.c:1283:21: error:
 comparison of distinct pointer types lacks a cast [-Werror]

Signed-off-by: Stefan Weil <address@hidden>
 exec.c                  |    4 ++--
 include/exec/exec-all.h |    2 +-
 target-s390x/kvm.c      |    4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/exec.c b/exec.c
index 26681ce..1a08115 100644
--- a/exec.c
+++ b/exec.c
@@ -749,14 +749,14 @@ static int subpage_register (subpage_t *mmio, uint32_t 
start, uint32_t end,
                              uint16_t section);
 static subpage_t *subpage_init(AddressSpace *as, hwaddr base);
-static void *(*phys_mem_alloc)(ram_addr_t size) = qemu_anon_ram_alloc;
+static void *(*phys_mem_alloc)(size_t size) = qemu_anon_ram_alloc;
  * Set a custom physical guest memory alloator.
  * Accelerators with unusual needs may need this.  Hopefully, we can
  * get rid of it eventually.
-void phys_mem_set_alloc(void *(*alloc)(ram_addr_t))
+void phys_mem_set_alloc(void *(*alloc)(size_t))
     phys_mem_alloc = alloc;
diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
index 77242e2..50ecfd4 100644
--- a/include/exec/exec-all.h
+++ b/include/exec/exec-all.h
@@ -368,7 +368,7 @@ static inline uintptr_t tcg_getra_ext(uintptr_t ra)
 #if !defined(CONFIG_USER_ONLY)
-void phys_mem_set_alloc(void *(*alloc)(ram_addr_t));
+void phys_mem_set_alloc(void *(*alloc)(size_t));
 struct MemoryRegion *iotlb_to_region(hwaddr index);
 bool io_mem_read(struct MemoryRegion *mr, hwaddr addr,
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index 4923e0a..d229bdf 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -93,7 +93,7 @@ const KVMCapabilityInfo kvm_arch_required_capabilities[] = {
 static int cap_sync_regs;
-static void *legacy_s390_alloc(ram_addr_t size);
+static void *legacy_s390_alloc(size_t size);
 int kvm_arch_init(KVMState *s)
@@ -325,7 +325,7 @@ int kvm_s390_get_registers_partial(CPUState *cs)
  * to grow. We also have to use MAP parameters that avoid
  * read-only mapping of guest pages.
-static void *legacy_s390_alloc(ram_addr_t size)
+static void *legacy_s390_alloc(size_t size)
     void *mem;

reply via email to

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