qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH] Define OS-dependent qemu_getpagesize()


From: Hollis Blanchard
Subject: [Qemu-devel] [PATCH] Define OS-dependent qemu_getpagesize()
Date: Mon, 10 Nov 2008 15:33:24 -0600

Signed-off-by: Hollis Blanchard <address@hidden>

diff --git a/qemu/exec.c b/qemu/exec.c
--- a/qemu/exec.c
+++ b/qemu/exec.c
@@ -239,16 +239,7 @@ static void page_init(void)
 {
     /* NOTE: we can always suppose that qemu_host_page_size >=
        TARGET_PAGE_SIZE */
-#ifdef _WIN32
-    {
-        SYSTEM_INFO system_info;
-
-        GetSystemInfo(&system_info);
-        qemu_real_host_page_size = system_info.dwPageSize;
-    }
-#else
-    qemu_real_host_page_size = getpagesize();
-#endif
+    qemu_real_host_page_size = qemu_getpagesize();
     if (qemu_host_page_size == 0)
         qemu_host_page_size = qemu_real_host_page_size;
     if (qemu_host_page_size < TARGET_PAGE_SIZE)
diff --git a/qemu/osdep.c b/qemu/osdep.c
--- a/qemu/osdep.c
+++ b/qemu/osdep.c
@@ -64,6 +64,14 @@ void qemu_vfree(void *ptr)
 void qemu_vfree(void *ptr)
 {
     VirtualFree(ptr, 0, MEM_RELEASE);
+}
+
+long qemu_getpagesize(void)
+{
+    SYSTEM_INFO system_info;
+
+    GetSystemInfo(&system_info);
+    return system_info.dwPageSize;
 }
 
 #else
@@ -190,6 +198,11 @@ void *qemu_memalign(size_t alignment, si
 #endif
 }
 
+long qemu_getpagesize(void)
+{
+    return sysconf(_SC_PAGESIZE);
+}
+
 /* alloc shared memory pages */
 void *qemu_vmalloc(size_t size)
 {
diff --git a/qemu/osdep.h b/qemu/osdep.h
--- a/qemu/osdep.h
+++ b/qemu/osdep.h
@@ -72,6 +72,7 @@ void *qemu_memalign(size_t alignment, si
 void *qemu_memalign(size_t alignment, size_t size);
 void *qemu_vmalloc(size_t size);
 void qemu_vfree(void *ptr);
+long qemu_getpagesize(void);
 
 int qemu_create_pidfile(const char *filename);
 




reply via email to

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