@@ -2233,32 +2233,37 @@ static void ram_block_add(RAMBlock *new_block, Error **errp, bool shared)
RAMBlock *last_block = NULL;
ram_addr_t old_ram_size, new_ram_size;
Error *err = NULL;
+ const char *name;
+ void *addr;
+ size_t maxlen;
old_ram_size = last_ram_page();
qemu_mutex_lock_ramlist();
- new_block->offset = find_ram_offset(new_block->max_length);
+ maxlen = new_block->max_length;
+ new_block->offset = find_ram_offset(maxlen);
if (!new_block->host) {
if (xen_enabled()) {
- xen_ram_alloc(new_block->offset, new_block->max_length,
- new_block->mr, &err);
+ xen_ram_alloc(new_block->offset, maxlen, new_block->mr, &err);
if (err) {
error_propagate(errp, err);
qemu_mutex_unlock_ramlist();
return;
}
} else {
- new_block->host = phys_mem_alloc(new_block->max_length,
- &new_block->mr->align, shared);
- if (!new_block->host) {
+ name = memory_region_name(new_block->mr);
+ addr = phys_mem_alloc(maxlen, &new_block->mr->align, shared);
+
+ if (!addr) {
error_setg_errno(errp, errno,
"cannot set up guest memory '%s'",
- memory_region_name(new_block->mr));
+ name);
qemu_mutex_unlock_ramlist();
return;
}
- memory_try_enable_merging(new_block->host, new_block->max_length);
+ memory_try_enable_merging(addr, maxlen);
+ new_block->host = addr;
}
}
Massage the code to simplify the later patch "exec, memory: exec(3) to restart". No functional change. Signed-off-by: Steve Sistare <steven.sistare@oracle.com> --- exec.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-)