From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KszD4-0006o0-Bd for qemu-devel@nongnu.org; Thu, 23 Oct 2008 08:22:38 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KszD3-0006nf-Hs for qemu-devel@nongnu.org; Thu, 23 Oct 2008 08:22:37 -0400 Received: from [199.232.76.173] (port=51681 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KszD3-0006nc-Bo for qemu-devel@nongnu.org; Thu, 23 Oct 2008 08:22:37 -0400 Received: from mx2.redhat.com ([66.187.237.31]:54590) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KszD2-000670-Uw for qemu-devel@nongnu.org; Thu, 23 Oct 2008 08:22:37 -0400 From: Glauber Costa Date: Thu, 23 Oct 2008 12:18:45 -0200 Message-Id: <1224771556-11146-2-git-send-email-glommer@redhat.com> In-Reply-To: <1224771556-11146-1-git-send-email-glommer@redhat.com> References: <1224771556-11146-1-git-send-email-glommer@redhat.com> Subject: [Qemu-devel] [PATCH 01/32] use anonymous memory for kqemu. Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: jan.kiszka@siemens.com, aliguori@us.ibm.com, jes@sgi.com, avi@qumranet.com, dmitry.baryshkov@siemens.com Signed-off-by: Glauber Costa --- osdep.c | 111 --------------------------------------------------------------- 1 files changed, 0 insertions(+), 111 deletions(-) diff --git a/osdep.c b/osdep.c index 683aad0..31c96e6 100644 --- a/osdep.c +++ b/osdep.c @@ -68,112 +68,9 @@ void qemu_vfree(void *ptr) #else -#if defined(USE_KQEMU) - -#ifdef __OpenBSD__ -#include -#include -#include -#else -#include -#endif - #include #include -static void *kqemu_vmalloc(size_t size) -{ - static int phys_ram_fd = -1; - static int phys_ram_size = 0; - void *ptr; - -#ifdef __OpenBSD__ /* no need (?) for a dummy file on OpenBSD */ - int map_anon = MAP_ANON; -#else - int map_anon = 0; - const char *tmpdir; - char phys_ram_file[1024]; -#ifdef HOST_SOLARIS - struct statvfs stfs; -#else - struct statfs stfs; -#endif - - if (phys_ram_fd < 0) { - tmpdir = getenv("QEMU_TMPDIR"); - if (!tmpdir) -#ifdef HOST_SOLARIS - tmpdir = "/tmp"; - if (statvfs(tmpdir, &stfs) == 0) { -#else - tmpdir = "/dev/shm"; - if (statfs(tmpdir, &stfs) == 0) { -#endif - int64_t free_space; - int ram_mb; - - free_space = (int64_t)stfs.f_bavail * stfs.f_bsize; - if ((ram_size + 8192 * 1024) >= free_space) { - ram_mb = (ram_size / (1024 * 1024)); - fprintf(stderr, - "You do not have enough space in '%s' for the %d MB of QEMU virtual RAM.\n", - tmpdir, ram_mb); - if (strcmp(tmpdir, "/dev/shm") == 0) { - fprintf(stderr, "To have more space available provided you have enough RAM and swap, do as root:\n" - "mount -o remount,size=%dm /dev/shm\n", - ram_mb + 16); - } else { - fprintf(stderr, - "Use the '-m' option of QEMU to diminish the amount of virtual RAM or use the\n" - "QEMU_TMPDIR environment variable to set another directory where the QEMU\n" - "temporary RAM file will be opened.\n"); - } - fprintf(stderr, "Or disable the accelerator module with -no-kqemu\n"); - exit(1); - } - } - snprintf(phys_ram_file, sizeof(phys_ram_file), "%s/qemuXXXXXX", - tmpdir); - phys_ram_fd = mkstemp(phys_ram_file); - if (phys_ram_fd < 0) { - fprintf(stderr, - "warning: could not create temporary file in '%s'.\n" - "Use QEMU_TMPDIR to select a directory in a tmpfs filesystem.\n" - "Using '/tmp' as fallback.\n", - tmpdir); - snprintf(phys_ram_file, sizeof(phys_ram_file), "%s/qemuXXXXXX", - "/tmp"); - phys_ram_fd = mkstemp(phys_ram_file); - if (phys_ram_fd < 0) { - fprintf(stderr, "Could not create temporary memory file '%s'\n", - phys_ram_file); - exit(1); - } - } - unlink(phys_ram_file); - } - size = (size + 4095) & ~4095; - ftruncate(phys_ram_fd, phys_ram_size + size); -#endif /* !__OpenBSD__ */ - ptr = mmap(NULL, - size, - PROT_WRITE | PROT_READ, map_anon | MAP_SHARED, - phys_ram_fd, phys_ram_size); - if (ptr == MAP_FAILED) { - fprintf(stderr, "Could not map physical memory\n"); - exit(1); - } - phys_ram_size += size; - return ptr; -} - -static void kqemu_vfree(void *ptr) -{ - /* may be useful some day, but currently we do not need to free */ -} - -#endif - void *qemu_memalign(size_t alignment, size_t size) { #if defined(_POSIX_C_SOURCE) @@ -193,10 +90,6 @@ void *qemu_memalign(size_t alignment, size_t size) /* alloc shared memory pages */ void *qemu_vmalloc(size_t size) { -#if defined(USE_KQEMU) - if (kqemu_allowed) - return kqemu_vmalloc(size); -#endif #ifdef _BSD return valloc(size); #else @@ -206,10 +99,6 @@ void *qemu_vmalloc(size_t size) void qemu_vfree(void *ptr) { -#if defined(USE_KQEMU) - if (kqemu_allowed) - kqemu_vfree(ptr); -#endif free(ptr); } -- 1.5.5.1