summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--memory.c2
-rw-r--r--vl.c3
2 files changed, 2 insertions, 3 deletions
diff --git a/memory.c b/memory.c
index b91a60a921..7eaa1e9fd4 100644
--- a/memory.c
+++ b/memory.c
@@ -849,7 +849,7 @@ void memory_region_init(MemoryRegion *mr,
{
mr->ops = &unassigned_mem_ops;
mr->opaque = NULL;
- mr->owner = owner;
+ mr->owner = owner ? owner : qdev_get_machine();
mr->iommu_ops = NULL;
mr->container = NULL;
mr->size = int128_make64(size);
diff --git a/vl.c b/vl.c
index 41ddcd2678..88feeabd63 100644
--- a/vl.c
+++ b/vl.c
@@ -3986,12 +3986,11 @@ int main(int argc, char **argv, char **envp)
exit(1);
}
- cpu_exec_init_all();
-
current_machine = MACHINE(object_new(object_class_get_name(
OBJECT_CLASS(machine_class))));
object_property_add_child(object_get_root(), "machine",
OBJECT(current_machine), &error_abort);
+ cpu_exec_init_all();
if (machine_class->hw_version) {
qemu_set_version(machine_class->hw_version);