On 07/26/2017 11:04 AM, 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 > --- > 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); > + } > How do you actually trigger this? There's already appropriate command line options handling in vl.c, which all targets (I tried) incorporate. For unicore32: $ ./unicore32-softmmu/qemu-system-unicore32 -kernel qemu-system-unicore32: -kernel: requires an argument I also see what I believe is proper handling with invalid kernels (or empty options): $ ./unicore32-softmmu/qemu-system-unicore32 -kernel '' qemu-system-unicore32: Load kernel error: '' Regards, - Cleber. > /* only zImage format supported */ > size = load_image_targphys(kernel_filename, KERNEL_LOAD_ADDR, > -- Cleber Rosa [ Sr Software Engineer - Virtualization Team - Red Hat ] [ Avocado Test Framework - avocado-framework.github.io ] [ 7ABB 96EB 8B46 B94D 5E0F E9BB 657E 8D33 A5F2 09F3 ]