aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2017-09-25 10:58:25 +0200
committerDavid Gibson <david@gibson.dropbear.id.au>2017-09-27 13:05:41 +1000
commit15fcedb26fce9cde3f3a2cec533101b6fe43f6e5 (patch)
treea843cf84d926a2cacb3313dcfc4bb5b7c12baafb /hw
parent5aec066c416bf8b2d977d2081d0a7540dda3b96f (diff)
downloadqemu-15fcedb26fce9cde3f3a2cec533101b6fe43f6e5.zip
qemu-15fcedb26fce9cde3f3a2cec533101b6fe43f6e5.tar.gz
qemu-15fcedb26fce9cde3f3a2cec533101b6fe43f6e5.tar.bz2
ppc/pnv: check for OPAL firmware file presence
and exit before uselessly trying to load it if the file does not exists. Issue discovered by Coverity Scan. Signed-off-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'hw')
-rw-r--r--hw/ppc/pnv.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
index 4722115..d46d91c 100644
--- a/hw/ppc/pnv.c
+++ b/hw/ppc/pnv.c
@@ -570,10 +570,14 @@ static void ppc_powernv_init(MachineState *machine)
}
fw_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, bios_name);
+ if (!fw_filename) {
+ error_report("Could not find OPAL firmware '%s'", bios_name);
+ exit(1);
+ }
fw_size = load_image_targphys(fw_filename, FW_LOAD_ADDR, FW_MAX_SIZE);
if (fw_size < 0) {
- error_report("Could not load OPAL '%s'", fw_filename);
+ error_report("Could not load OPAL firmware '%s'", fw_filename);
exit(1);
}
g_free(fw_filename);