[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-stable] [Qemu-devel] [PATCH] KVM: always use MADV_DONTFORK
From: |
Peter Maydell |
Subject: |
Re: [Qemu-stable] [Qemu-devel] [PATCH] KVM: always use MADV_DONTFORK |
Date: |
Thu, 25 Jul 2013 11:16:44 +0100 |
On 25 July 2013 11:11, Andrea Arcangeli <address@hidden> wrote:
> diff --git a/exec.c b/exec.c
> index c99a883..d3bb58d 100644
> --- a/exec.c
> +++ b/exec.c
> @@ -1162,6 +1162,7 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_addr_t size,
> void *host,
>
> qemu_ram_setup_dump(new_block->host, size);
> qemu_madvise(new_block->host, size, QEMU_MADV_HUGEPAGE);
> + qemu_madvise(new_block->host, size, QEMU_MADV_DONTFORK);
>
> if (kvm_enabled())
> kvm_setup_guest_memory(new_block->host, size);
>
kvm_setup_guest_memory() already calls
qemu_madvise(start, size, QEMU_MADV_DONTFORK)
so why do we need to do it here as well?
If we should be doing it in all cases presumably the right
fix is to move the if (!kvm_has_sync_mmu()) check in
kvm_setup_guest_memory() from "do we call madvise" to
"do we fail with an error if it failed".
thanks
-- PMM