OSDN Git Service

ppc/pnv: fix pnv_core_realize() error handling
authorCédric Le Goater <clg@kaod.org>
Tue, 26 Jun 2018 14:22:14 +0000 (16:22 +0200)
committerDavid Gibson <david@gibson.dropbear.id.au>
Mon, 2 Jul 2018 23:56:51 +0000 (09:56 +1000)
commit d35aefa9ae15 ("ppc/pnv: introduce a new intc_create() operation
to the chip model") changed the object link in the pnv_core_realize()
routine but a return was forgotten in case of error, which can lead to
more problems afterwards (segv)

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/ppc/pnv_core.c

index a9f129f..9750464 100644 (file)
@@ -150,6 +150,7 @@ static void pnv_core_realize(DeviceState *dev, Error **errp)
     if (!chip) {
         error_propagate(errp, local_err);
         error_prepend(errp, "required link 'chip' not found: ");
+        return;
     }
 
     pc->threads = g_new(PowerPCCPU *, cc->nr_threads);