qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] vl.c/memdev: Error on bad memory backend


From: Dr. David Alan Gilbert (git)
Subject: [PATCH] vl.c/memdev: Error on bad memory backend
Date: Tue, 17 Mar 2020 12:07:59 +0000

From: "Dr. David Alan Gilbert" <address@hidden>

If memory-backend is a non-existent object, qemu crashes.
Check that the backend actually resolves.

e.g.   ./qemu-system-x86_64 -machine pc,accel=kvm,memory-backend=foo

Signed-off-by: Dr. David Alan Gilbert <address@hidden>
---
 softmmu/vl.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/softmmu/vl.c b/softmmu/vl.c
index ff2685dff8..76507e99c4 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@ -4288,6 +4288,11 @@ void qemu_init(int argc, char **argv, char **envp)
 
         backend = object_resolve_path_type(current_machine->ram_memdev_id,
                                            TYPE_MEMORY_BACKEND, NULL);
+        if (!backend) {
+            error_report("Unknown memory backend object id '%s'",
+                         current_machine->ram_memdev_id);
+            exit(EXIT_FAILURE);
+        }
         backend_size = object_property_get_uint(backend, "size",  
&error_abort);
         if (have_custom_ram_size && backend_size != ram_size) {
                 error_report("Size specified by -m option must match size of "
-- 
2.24.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]