[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH 06/10] pseries: Improve error handling in find_unknown
From: |
David Gibson |
Subject: |
[Qemu-ppc] [PATCH 06/10] pseries: Improve error handling in find_unknown_sysbus_device() |
Date: |
Fri, 15 Jan 2016 23:00:40 +1100 |
Use error_setg() to return an error instead of using an explicit exit().
Signed-off-by: David Gibson <address@hidden>
---
hw/ppc/spapr.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index bb5eaa5..ddca6e6 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1106,6 +1106,7 @@ static void spapr_reset_htab(sPAPRMachineState *spapr,
Error **errp)
static int find_unknown_sysbus_device(SysBusDevice *sbdev, void *opaque)
{
+ Error **errp = opaque;
bool matched = false;
if (object_dynamic_cast(OBJECT(sbdev), TYPE_SPAPR_PCI_HOST_BRIDGE)) {
@@ -1113,9 +1114,10 @@ static int find_unknown_sysbus_device(SysBusDevice
*sbdev, void *opaque)
}
if (!matched) {
- error_report("Device %s is not supported by this machine yet.",
- qdev_fw_name(DEVICE(sbdev)));
- exit(1);
+ error_setg(errp,
+ "Device %s is not supported by this machine yet",
+ qdev_fw_name(DEVICE(sbdev)));
+ return 1; /* Don't continue scanning devices */
}
return 0;
@@ -1150,7 +1152,7 @@ static void ppc_spapr_reset(void)
uint32_t rtas_limit;
/* Check for unknown sysbus devices */
- foreach_dynamic_sysbus_device(find_unknown_sysbus_device, NULL);
+ foreach_dynamic_sysbus_device(find_unknown_sysbus_device, &error_fatal);
/* Reset the hash table & recalc the RMA */
spapr_reset_htab(spapr, &error_fatal);
--
2.5.0
- Re: [Qemu-ppc] [Qemu-devel] [PATCH 07/10] pseries: Clean up error handling in spapr_rtas_register(), (continued)
[Qemu-ppc] [PATCH 10/10] pseries: Clean up error reporting in htab migration functions, David Gibson, 2016/01/15
[Qemu-ppc] [PATCH 05/10] pseries: Cleanup error handling in spapr_vga_init(), David Gibson, 2016/01/15
[Qemu-ppc] [PATCH 06/10] pseries: Improve error handling in find_unknown_sysbus_device(),
David Gibson <=
Re: [Qemu-ppc] [Qemu-devel] [PATCH 00/10] Cleanups to error reporting on ppc and spapr (v2), Markus Armbruster, 2016/01/15