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