From c6c94b043e8b3593d0beb52966dce43069233840 Mon Sep 17 00:00:00 2001 From: Izik Eidus Date: Tue, 28 Jul 2009 19:14:26 +0300 Subject: [PATCH] kvm userspace: ksm support rfc for ksm support to kvm userpsace. Signed-off-by: Izik Eidus signed-off-by: Justin M. Forbes Signed-off-by: Mark McLoughlin Fedora-patch: qemu-add-ksm-support.patch --- exec.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/exec.c b/exec.c index 0655b4b..a0e2203 100644 --- a/exec.c +++ b/exec.c @@ -65,6 +65,9 @@ #undef DEBUG_TB_CHECK #endif +/* Quick hack to enable KSM support */ +#define MADV_MERGEABLE 12 /* KSM may merge identical pages */ + #define SMC_BITMAP_USE_THRESHOLD 10 #if defined(TARGET_SPARC64) @@ -2579,6 +2582,9 @@ ram_addr_t qemu_ram_alloc(ram_addr_t size) new_block->host = file_ram_alloc(size, mem_path); if (!new_block->host) { new_block->host = qemu_vmalloc(size); +#ifdef MADV_MERGEABLE + madvise(new_block->host, size, MADV_MERGEABLE); +#endif } new_block->offset = last_ram_offset; new_block->length = size; -- 1.6.2.5