aboutsummaryrefslogtreecommitdiff
path: root/hw/mips/mips_r4k.c
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2017-07-27 01:56:13 +0200
committerYongbok Kim <yongbok.kim@imgtec.com>2017-07-28 13:32:32 +0100
commit3ee3122c0d2614297890ded2017655fc2a139af6 (patch)
tree95b1a1d320680952eed547fce98463543a2ac619 /hw/mips/mips_r4k.c
parent871a0f7ad2b9560c5f7d640125c5be95ca23ca7f (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.c6
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);
}