Patchwork [2/4] xen: Uninline xen_unmap_block

login
register
mail settings
Submitter Jan Kiszka
Date June 21, 2011, 6:26 a.m.
Message ID <614a772ddc5274634a420994507fe6c2f37e6839.1308637593.git.jan.kiszka@web.de>
Download mbox | patch
Permalink /patch/101239/
State New
Headers show

Comments

Jan Kiszka - June 21, 2011, 6:26 a.m.
From: Jan Kiszka <jan.kiszka@siemens.com>

No reason to inline this helper. Also, cleaning up the header unbreaks
non-UNIX building where sys/mman.h is not available.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 exec.c              |    1 +
 xen-mapcache-stub.c |    4 ++++
 xen-mapcache.c      |    9 +++++++++
 xen-mapcache.h      |   14 +-------------
 4 files changed, 15 insertions(+), 13 deletions(-)
Alexander Graf - June 21, 2011, 7:22 a.m.
On 21.06.2011, at 08:26, Jan Kiszka wrote:

> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> No reason to inline this helper. Also, cleaning up the header unbreaks
> non-UNIX building where sys/mman.h is not available.

Looks good to me. Stefano, please ack.

Alex
Stefano Stabellini - June 21, 2011, 1:49 p.m.
On Tue, 21 Jun 2011, Alexander Graf wrote:
> On 21.06.2011, at 08:26, Jan Kiszka wrote:
> 
> > From: Jan Kiszka <jan.kiszka@siemens.com>
> > 
> > No reason to inline this helper. Also, cleaning up the header unbreaks
> > non-UNIX building where sys/mman.h is not available.
> 
> Looks good to me. Stefano, please ack.
 

Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

Patch

diff --git a/exec.c b/exec.c
index 09928a3..41ba883 100644
--- a/exec.c
+++ b/exec.c
@@ -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__)
diff --git a/xen-mapcache-stub.c b/xen-mapcache-stub.c
index 7c14b3d..dfecbdd 100644
--- a/xen-mapcache-stub.c
+++ b/xen-mapcache-stub.c
@@ -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)
+{
+}
diff --git a/xen-mapcache.c b/xen-mapcache.c
index 349cc62..4c663e6 100644
--- a/xen-mapcache.c
+++ b/xen-mapcache.c
@@ -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));
+    }
+}
diff --git a/xen-mapcache.h b/xen-mapcache.h
index 339444c..f7b4c04 100644
--- a/xen-mapcache.h
+++ b/xen-mapcache.h
@@ -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)