aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorStefan Weil <sw@weilnetz.de>2015-03-14 16:29:09 +0100
committerAlexander Graf <agraf@suse.de>2015-03-25 22:49:46 +0100
commit4c56440d6754b45c2d82969e029a3c2a72864b30 (patch)
tree22e7e5b3894236eb6f0fd9e70cfd00348351fdaa /hw
parent0d2f830255c758240dccbeb732a2c21f4eea995c (diff)
spapr: Add missing checks for NULL pointers and report failures
This fixes potential runtime crashes and two warnings from Coverity. The new error message does not add a prefix "qemu:" because that is already done in function hw_error. It also starts with an uppercase letter because that seems to be the mostly used form. Signed-off-by: Stefan Weil <sw@weilnetz.de> [agraf: fix typo] Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw')
-rw-r--r--hw/ppc/spapr.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 0487f52819..7febff7ed2 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1506,6 +1506,10 @@ static void ppc_spapr_init(MachineState *machine)
}
filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, "spapr-rtas.bin");
+ if (!filename) {
+ hw_error("Could not find LPAR rtas '%s'\n", "spapr-rtas.bin");
+ exit(1);
+ }
spapr->rtas_size = get_image_size(filename);
spapr->rtas_blob = g_malloc(spapr->rtas_size);
if (load_image_size(filename, spapr->rtas_blob, spapr->rtas_size) < 0) {
@@ -1623,6 +1627,10 @@ static void ppc_spapr_init(MachineState *machine)
bios_name = FW_FILE_NAME;
}
filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, bios_name);
+ if (!filename) {
+ hw_error("Could not find LPAR rtas '%s'\n", bios_name);
+ exit(1);
+ }
fw_size = load_image_targphys(filename, 0, FW_MAX_SIZE);
if (fw_size < 0) {
hw_error("qemu: could not load LPAR rtas '%s'\n", filename);