diff options
author | Aurelien Jarno <aurelien@aurel32.net> | 2017-07-27 01:56:13 +0200 |
---|---|---|
committer | Yongbok Kim <yongbok.kim@imgtec.com> | 2017-07-28 13:32:32 +0100 |
commit | 3ee3122c0d2614297890ded2017655fc2a139af6 (patch) | |
tree | 95b1a1d320680952eed547fce98463543a2ac619 /hw/mips/mips_r4k.c | |
parent | 871a0f7ad2b9560c5f7d640125c5be95ca23ca7f (diff) |
hw/mips: load_elf_strerror to report kernel loading failure
Emulated MIPS boards bail out with a simple "could not load kernel" when
a kernel could not be load, without specifying the underlying reason.
Fix that by calling load_elf_strerror.
At the same time use error_report to report the error instead of
fprintf.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Yongbok Kim <yongbok.kim@imgtec.com>
Diffstat (limited to 'hw/mips/mips_r4k.c')
-rw-r--r-- | hw/mips/mips_r4k.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/hw/mips/mips_r4k.c b/hw/mips/mips_r4k.c index 690874be2b..2f5ced7409 100644 --- a/hw/mips/mips_r4k.c +++ b/hw/mips/mips_r4k.c @@ -31,6 +31,7 @@ #include "sysemu/block-backend.h" #include "exec/address-spaces.h" #include "sysemu/qtest.h" +#include "qemu/error-report.h" #define MAX_IDE_BUS 2 @@ -96,8 +97,9 @@ static int64_t load_kernel(void) if ((entry & ~0x7fffffffULL) == 0x80000000) entry = (int32_t)entry; } else { - fprintf(stderr, "qemu: could not load kernel '%s'\n", - loaderparams.kernel_filename); + error_report("qemu: could not load kernel '%s': %s", + loaderparams.kernel_filename, + load_elf_strerror(kernel_size)); exit(1); } |