Commit ccb167e9 authored by Izik Eidus's avatar Izik Eidus Committed by Anthony Liguori
Browse files

ksm support



Call MADV_MERGEABLE on guest memory allocations.  MADV_MERGABLE will be
available starting in Linux 2.6.32.  This system call registers a region of
virtual address space with Linux as a candidate for transparent memory
sharing.

Patchworks-ID: 35447
Signed-off-by: default avatarIzik Eidus <ieidus@redhat.com>
Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
parent de41ac92
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -2412,6 +2412,9 @@ ram_addr_t qemu_ram_alloc(ram_addr_t size)
    new_block = qemu_malloc(sizeof(*new_block));

    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;