On 07/26/2017 11:28 AM, Cleber Rosa wrote: > > > 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: > Oh my, I misread your commit message. I see this is actually triggered *without* -kernel, and not without a parameter. - Cleber. > $ ./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 ]