Commit dfabb8b9 authored by Paolo Bonzini's avatar Paolo Bonzini Committed by Michael S. Tsirkin

numa: introduce memory_region_allocate_system_memory

Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Signed-off-by: default avatarHu Tao <hutao@cn.fujitsu.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Reviewed-by: default avatarEduardo Habkost <ehabkost@redhat.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>

MST: resolve conflicts
parent d1169464
...@@ -1215,8 +1215,7 @@ FWCfgState *pc_memory_init(MemoryRegion *system_memory, ...@@ -1215,8 +1215,7 @@ FWCfgState *pc_memory_init(MemoryRegion *system_memory,
* with older qemus that used qemu_ram_alloc(). * with older qemus that used qemu_ram_alloc().
*/ */
ram = g_malloc(sizeof(*ram)); ram = g_malloc(sizeof(*ram));
memory_region_init_ram(ram, NULL, "pc.ram", ram_size); memory_region_allocate_system_memory(ram, NULL, "pc.ram", ram_size);
vmstate_register_ram_global(ram);
*ram_memory = ram; *ram_memory = ram;
ram_below_4g = g_malloc(sizeof(*ram_below_4g)); ram_below_4g = g_malloc(sizeof(*ram_below_4g));
memory_region_init_alias(ram_below_4g, NULL, "ram-below-4g", ram, memory_region_init_alias(ram_below_4g, NULL, "ram-below-4g", ram,
......
...@@ -43,9 +43,13 @@ struct QEMUMachine { ...@@ -43,9 +43,13 @@ struct QEMUMachine {
const char *hw_version; const char *hw_version;
}; };
#define TYPE_MACHINE_SUFFIX "-machine" void memory_region_allocate_system_memory(MemoryRegion *mr, Object *owner,
const char *name,
uint64_t ram_size);
int qemu_register_machine(QEMUMachine *m); int qemu_register_machine(QEMUMachine *m);
#define TYPE_MACHINE_SUFFIX "-machine"
#define TYPE_MACHINE "machine" #define TYPE_MACHINE "machine"
#undef MACHINE /* BSD defines it and QEMU does not use it */ #undef MACHINE /* BSD defines it and QEMU does not use it */
#define MACHINE(obj) \ #define MACHINE(obj) \
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include "qemu/notify.h" #include "qemu/notify.h"
#include "qemu/main-loop.h" #include "qemu/main-loop.h"
#include "qemu/bitmap.h" #include "qemu/bitmap.h"
#include "qom/object.h"
/* vl.c */ /* vl.c */
......
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#include "qapi/opts-visitor.h" #include "qapi/opts-visitor.h"
#include "qapi/dealloc-visitor.h" #include "qapi/dealloc-visitor.h"
#include "qapi/qmp/qerror.h" #include "qapi/qmp/qerror.h"
#include "hw/boards.h"
QemuOptsList qemu_numa_opts = { QemuOptsList qemu_numa_opts = {
.name = "numa", .name = "numa",
...@@ -193,3 +194,11 @@ void set_numa_modes(void) ...@@ -193,3 +194,11 @@ void set_numa_modes(void)
} }
} }
} }
void memory_region_allocate_system_memory(MemoryRegion *mr, Object *owner,
const char *name,
uint64_t ram_size)
{
memory_region_init_ram(mr, owner, name, ram_size);
vmstate_register_ram_global(mr);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment