[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] exec: Remove unnecessary RAM_FILE flag
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH] exec: Remove unnecessary RAM_FILE flag |
Date: |
Mon, 9 Nov 2015 10:46:57 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 06/11/2015 23:11, Eduardo Habkost wrote:
> The only code that sets RAMBlock.fd is file_ram_alloc(), and the only
> code that calls file_ram_alloc() sets the RAM_FILE flag. That means the
> flag is always set when RAMBlock.fd >= 0, and the munmap() call at
> reclaim_ramblock() is dead code that never runs.
>
> Signed-off-by: Eduardo Habkost <address@hidden>
> ---
> exec.c | 10 +---------
> 1 file changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/exec.c b/exec.c
> index a028961..9eb8b4b 100644
> --- a/exec.c
> +++ b/exec.c
> @@ -88,9 +88,6 @@ static MemoryRegion io_mem_unassigned;
> */
> #define RAM_RESIZEABLE (1 << 2)
>
> -/* RAM is backed by an mmapped file.
> - */
> -#define RAM_FILE (1 << 3)
> #endif
>
> struct CPUTailQ cpus = QTAILQ_HEAD_INITIALIZER(cpus);
> @@ -1597,7 +1594,6 @@ ram_addr_t qemu_ram_alloc_from_file(ram_addr_t size,
> MemoryRegion *mr,
> new_block->used_length = size;
> new_block->max_length = size;
> new_block->flags = share ? RAM_SHARED : 0;
> - new_block->flags |= RAM_FILE;
> new_block->host = file_ram_alloc(new_block, size,
> mem_path, errp);
> if (!new_block->host) {
> @@ -1699,11 +1695,7 @@ static void reclaim_ramblock(RAMBlock *block)
> xen_invalidate_map_cache_entry(block->host);
> #ifndef _WIN32
> } else if (block->fd >= 0) {
> - if (block->flags & RAM_FILE) {
> - qemu_ram_munmap(block->host, block->max_length);
> - } else {
> - munmap(block->host, block->max_length);
> - }
> + qemu_ram_munmap(block->host, block->max_length);
> close(block->fd);
> #endif
> } else {
>
Queued for 2.6, thanks.
Paolo