On 07/26/2017 12:04 PM, Eduardo Otubo wrote:
Starting qemu-system-unicore32 without the -kernel parameter results in
an assert() returns false and aborts qemu. This patch replaces it with a
proper error message followed by exit(1).

Signed-off-by: Eduardo Otubo <ot...@redhat.com>
---
  hw/unicore32/puv3.c | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/hw/unicore32/puv3.c b/hw/unicore32/puv3.c
index e9d1a60b6f..ff62efb4df 100644
--- a/hw/unicore32/puv3.c
+++ b/hw/unicore32/puv3.c
@@ -92,7 +92,10 @@ static void puv3_load_kernel(const char *kernel_filename)
      if (kernel_filename == NULL && qtest_enabled()) {
          return;
      }
-    assert(kernel_filename != NULL);
+    if (kernel_filename == NULL) {
+        error_report("kernel parameter cannot be empty");
+        exit(1);
+    }

This seems a temporary kludge for 2.10 but not the correct long-term fix.

As commented in another thread [1] where I got a bit discomfited, it'd be nice if during the 2.11 schedule the industry provide some help to clean/unify the loader.c code, ideally remove all duplicated code not arch-specific and use hw/core/loader*.

[1] http://lists.nongnu.org/archive/html/qemu-devel/2017-07/msg06760.html

/* only zImage format supported */
      size = load_image_targphys(kernel_filename, KERNEL_LOAD_ADDR,


Reply via email to