@@ -34,6 +34,7 @@
#include "kvm.h"
#include "hw/xen.h"
#include "qemu-timer.h"
+#include "trace.h"
#if defined(CONFIG_USER_ONLY)
#include <qemu.h>
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
@@ -42,3 +42,7 @@ uint8_t *xen_map_block(target_phys_addr_t phys_addr, target_phys_addr_t size)
{
return NULL;
}
+
+void xen_unmap_block(void *addr, ram_addr_t size)
+{
+}
@@ -373,3 +373,12 @@ uint8_t *xen_map_block(target_phys_addr_t phys_addr, target_phys_addr_t size)
return vaddr_base;
}
+
+void xen_unmap_block(void *addr, ram_addr_t size)
+{
+ trace_xen_unmap_block(addr, size);
+
+ if (munmap(addr, size) != 0) {
+ hw_error("xen_unmap_block: %s", strerror(errno));
+ }
+}
@@ -9,9 +9,6 @@
#ifndef XEN_MAPCACHE_H
#define XEN_MAPCACHE_H
-#include <sys/mman.h>
-#include "trace.h"
-
void qemu_map_cache_init(void);
uint8_t *qemu_map_cache(target_phys_addr_t phys_addr, target_phys_addr_t size, uint8_t lock);
void qemu_map_cache_unlock(void *phys_addr);
@@ -20,16 +17,7 @@ void qemu_invalidate_entry(uint8_t *buffer);
void qemu_invalidate_map_cache(void);
uint8_t *xen_map_block(target_phys_addr_t phys_addr, target_phys_addr_t size);
-
-static inline void xen_unmap_block(void *addr, ram_addr_t size)
-{
- trace_xen_unmap_block(addr, size);
-
- if (munmap(addr, size) != 0) {
- hw_error("xen_unmap_block: %s", strerror(errno));
- }
-}
-
+void xen_unmap_block(void *addr, ram_addr_t size);
#define mapcache_lock() ((void)0)
#define mapcache_unlock() ((void)0)