Commit 15ed71bae29d61e4c32a9fd1f3b0b47f3d5b2e9b
1 parent
a672b469
Define OS-dependent qemu_getpagesize() (Hollis Blanchard)
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5701 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
3 changed files
with
15 additions
and
10 deletions
exec.c
| ... | ... | @@ -231,16 +231,7 @@ static void page_init(void) |
| 231 | 231 | { |
| 232 | 232 | /* NOTE: we can always suppose that qemu_host_page_size >= |
| 233 | 233 | TARGET_PAGE_SIZE */ |
| 234 | -#ifdef _WIN32 | |
| 235 | - { | |
| 236 | - SYSTEM_INFO system_info; | |
| 237 | - | |
| 238 | - GetSystemInfo(&system_info); | |
| 239 | - qemu_real_host_page_size = system_info.dwPageSize; | |
| 240 | - } | |
| 241 | -#else | |
| 242 | - qemu_real_host_page_size = getpagesize(); | |
| 243 | -#endif | |
| 234 | + qemu_real_host_page_size = qemu_getpagesize(); | |
| 244 | 235 | if (qemu_host_page_size == 0) |
| 245 | 236 | qemu_host_page_size = qemu_real_host_page_size; |
| 246 | 237 | if (qemu_host_page_size < TARGET_PAGE_SIZE) | ... | ... |
osdep.c
| ... | ... | @@ -66,6 +66,14 @@ void qemu_vfree(void *ptr) |
| 66 | 66 | VirtualFree(ptr, 0, MEM_RELEASE); |
| 67 | 67 | } |
| 68 | 68 | |
| 69 | +long qemu_getpagesize(void) | |
| 70 | +{ | |
| 71 | + SYSTEM_INFO system_info; | |
| 72 | + | |
| 73 | + GetSystemInfo(&system_info); | |
| 74 | + return system_info.dwPageSize; | |
| 75 | +} | |
| 76 | + | |
| 69 | 77 | #else |
| 70 | 78 | |
| 71 | 79 | #if defined(USE_KQEMU) |
| ... | ... | @@ -190,6 +198,11 @@ void *qemu_memalign(size_t alignment, size_t size) |
| 190 | 198 | #endif |
| 191 | 199 | } |
| 192 | 200 | |
| 201 | +long qemu_getpagesize(void) | |
| 202 | +{ | |
| 203 | + return sysconf(_SC_PAGESIZE); | |
| 204 | +} | |
| 205 | + | |
| 193 | 206 | /* alloc shared memory pages */ |
| 194 | 207 | void *qemu_vmalloc(size_t size) |
| 195 | 208 | { | ... | ... |