From 7c63736603640ca7b74b65d71afc54fd0a3492f9 Mon Sep 17 00:00:00 2001 From: Avi Kivity Date: Wed, 21 Dec 2011 13:09:49 +0200 Subject: [PATCH] Store MemoryRegion in RAMBlock As a step in moving live migration from RAMBlocks to MemoryRegions, store the MemoryRegion in a RAMBlock. Reviewed-by: Anthony Liguori Signed-off-by: Avi Kivity --- cpu-all.h | 1 + exec.c | 1 + 2 files changed, 2 insertions(+) diff --git a/cpu-all.h b/cpu-all.h index 734833abda..4acaa8bc41 100644 --- a/cpu-all.h +++ b/cpu-all.h @@ -476,6 +476,7 @@ extern ram_addr_t ram_size; #define RAM_PREALLOC_MASK (1 << 0) typedef struct RAMBlock { + struct MemoryRegion *mr; uint8_t *host; ram_addr_t offset; ram_addr_t length; diff --git a/exec.c b/exec.c index dffceb970c..a4116d91cf 100644 --- a/exec.c +++ b/exec.c @@ -2793,6 +2793,7 @@ ram_addr_t qemu_ram_alloc_from_ptr(ram_addr_t size, void *host, size = TARGET_PAGE_ALIGN(size); new_block = g_malloc0(sizeof(*new_block)); + new_block->mr = mr; new_block->offset = find_ram_offset(size); if (host) { new_block->host = host;