summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2011-12-19 09:45:17 -0600
committerAnthony Liguori <aliguori@us.ibm.com>2011-12-19 09:45:17 -0600
commitf76d27b67ca05c7ee875e39b4f6e3d567d3e9292 (patch)
treed1c923164d9830fa0d8901c2af828ed69b5f243f
parent4a1cc6800a54b154a214e7ecf36c63c8c81f2074 (diff)
parent67d95c153bef55f619615ea71a5c2d689db4fd4e (diff)
downloadqemu-f76d27b67ca05c7ee875e39b4f6e3d567d3e9292.tar.gz
qemu-f76d27b67ca05c7ee875e39b4f6e3d567d3e9292.tar.bz2
qemu-f76d27b67ca05c7ee875e39b4f6e3d567d3e9292.zip
Merge remote-tracking branch 'qemu-kvm/memory/exec-obsolete' into staging
-rw-r--r--cpu-common.h39
-rw-r--r--exec-obsolete.h68
-rw-r--r--exec.c3
-rw-r--r--hw/etraxfs_eth.c3
-rw-r--r--memory.c3
5 files changed, 74 insertions, 42 deletions
diff --git a/cpu-common.h b/cpu-common.h
index 72eb731c3e..8295e4fea4 100644
--- a/cpu-common.h
+++ b/cpu-common.h
@@ -38,37 +38,7 @@ typedef unsigned long ram_addr_t;
typedef void CPUWriteMemoryFunc(void *opaque, target_phys_addr_t addr, uint32_t value);
typedef uint32_t CPUReadMemoryFunc(void *opaque, target_phys_addr_t addr);
-void cpu_register_physical_memory_log(target_phys_addr_t start_addr,
- ram_addr_t size,
- ram_addr_t phys_offset,
- ram_addr_t region_offset,
- bool log_dirty);
-
-static inline void cpu_register_physical_memory_offset(target_phys_addr_t start_addr,
- ram_addr_t size,
- ram_addr_t phys_offset,
- ram_addr_t region_offset)
-{
- cpu_register_physical_memory_log(start_addr, size, phys_offset,
- region_offset, false);
-}
-
-static inline void cpu_register_physical_memory(target_phys_addr_t start_addr,
- ram_addr_t size,
- ram_addr_t phys_offset)
-{
- cpu_register_physical_memory_offset(start_addr, size, phys_offset, 0);
-}
-
ram_addr_t cpu_get_physical_page_desc(target_phys_addr_t addr);
-struct MemoryRegion;
-ram_addr_t qemu_ram_alloc_from_ptr(DeviceState *dev, const char *name,
- ram_addr_t size, void *host,
- struct MemoryRegion *mr);
-ram_addr_t qemu_ram_alloc(DeviceState *dev, const char *name, ram_addr_t size,
- struct MemoryRegion *mr);
-void qemu_ram_free(ram_addr_t addr);
-void qemu_ram_free_from_ptr(ram_addr_t addr);
void qemu_ram_remap(ram_addr_t addr, ram_addr_t length);
/* This should only be used for ram local to a device. */
void *qemu_get_ram_ptr(ram_addr_t addr);
@@ -81,11 +51,6 @@ void qemu_put_ram_ptr(void *addr);
int qemu_ram_addr_from_host(void *ptr, ram_addr_t *ram_addr);
ram_addr_t qemu_ram_addr_from_host_nofail(void *ptr);
-int cpu_register_io_memory(CPUReadMemoryFunc * const *mem_read,
- CPUWriteMemoryFunc * const *mem_write,
- void *opaque, enum device_endian endian);
-void cpu_unregister_io_memory(int table_address);
-
void cpu_physical_memory_rw(target_phys_addr_t addr, uint8_t *buf,
int len, int is_write);
static inline void cpu_physical_memory_read(target_phys_addr_t addr,
@@ -134,10 +99,6 @@ void cpu_unregister_phys_memory_client(CPUPhysMemoryClient *);
* batching which can make a major impact on performance when using
* virtualization.
*/
-void qemu_register_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size);
-
-void qemu_unregister_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size);
-
void qemu_flush_coalesced_mmio_buffer(void);
uint32_t ldub_phys(target_phys_addr_t addr);
diff --git a/exec-obsolete.h b/exec-obsolete.h
new file mode 100644
index 0000000000..34b9fc56bd
--- /dev/null
+++ b/exec-obsolete.h
@@ -0,0 +1,68 @@
+/*
+ * Declarations for obsolete exec.c functions
+ *
+ * Copyright 2011 Red Hat, Inc. and/or its affiliates
+ *
+ * Authors:
+ * Avi Kivity <avi@redhat.com>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2. See
+ * the COPYING file in the top-level directory.
+ *
+ */
+
+/*
+ * This header is for use by exec.c and memory.c ONLY. Do not include it.
+ * The functions declared here will be removed soon.
+ */
+
+#ifndef EXEC_OBSOLETE_H
+#define EXEC_OBSOLETE_H
+
+#ifndef WANT_EXEC_OBSOLETE
+#error Do not include exec-obsolete.h
+#endif
+
+#ifndef CONFIG_USER_ONLY
+
+ram_addr_t qemu_ram_alloc_from_ptr(DeviceState *dev, const char *name,
+ ram_addr_t size, void *host,
+ MemoryRegion *mr);
+ram_addr_t qemu_ram_alloc(DeviceState *dev, const char *name, ram_addr_t size,
+ MemoryRegion *mr);
+void qemu_ram_free(ram_addr_t addr);
+void qemu_ram_free_from_ptr(ram_addr_t addr);
+
+int cpu_register_io_memory(CPUReadMemoryFunc * const *mem_read,
+ CPUWriteMemoryFunc * const *mem_write,
+ void *opaque, enum device_endian endian);
+void cpu_unregister_io_memory(int table_address);
+
+void cpu_register_physical_memory_log(target_phys_addr_t start_addr,
+ ram_addr_t size,
+ ram_addr_t phys_offset,
+ ram_addr_t region_offset,
+ bool log_dirty);
+
+static inline void cpu_register_physical_memory_offset(target_phys_addr_t start_addr,
+ ram_addr_t size,
+ ram_addr_t phys_offset,
+ ram_addr_t region_offset)
+{
+ cpu_register_physical_memory_log(start_addr, size, phys_offset,
+ region_offset, false);
+}
+
+static inline void cpu_register_physical_memory(target_phys_addr_t start_addr,
+ ram_addr_t size,
+ ram_addr_t phys_offset)
+{
+ cpu_register_physical_memory_offset(start_addr, size, phys_offset, 0);
+}
+
+void qemu_register_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size);
+void qemu_unregister_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size);
+
+#endif
+
+#endif
diff --git a/exec.c b/exec.c
index fbcb1bf028..32782b48c9 100644
--- a/exec.c
+++ b/exec.c
@@ -57,6 +57,9 @@
#include "trace.h"
#endif
+#define WANT_EXEC_OBSOLETE
+#include "exec-obsolete.h"
+
//#define DEBUG_TB_INVALIDATE
//#define DEBUG_FLUSH
//#define DEBUG_TLB
diff --git a/hw/etraxfs_eth.c b/hw/etraxfs_eth.c
index 5ac2d15fa1..b5252580a5 100644
--- a/hw/etraxfs_eth.c
+++ b/hw/etraxfs_eth.c
@@ -323,7 +323,6 @@ struct fs_eth
MemoryRegion mmio;
NICState *nic;
NICConf conf;
- int ethregs;
/* Two addrs in the filter. */
uint8_t macaddr[2][6];
@@ -571,8 +570,6 @@ static void eth_cleanup(VLANClientState *nc)
{
struct fs_eth *eth = DO_UPCAST(NICState, nc, nc)->opaque;
- cpu_unregister_io_memory(eth->ethregs);
-
/* Disconnect the client. */
eth->dma_out->client.push = NULL;
eth->dma_out->client.opaque = NULL;
diff --git a/memory.c b/memory.c
index 37e4f0905b..a7e615ad15 100644
--- a/memory.c
+++ b/memory.c
@@ -18,6 +18,9 @@
#include "kvm.h"
#include <assert.h>
+#define WANT_EXEC_OBSOLETE
+#include "exec-obsolete.h"
+
unsigned memory_region_transaction_depth = 0;
static bool memory_region_update_pending = false;