powerpc/82xx: Use common error handling code in pq2ads_pci_init_irq()
Adjust jump targets so that a bit of exception handling can be better reused at the end of this function. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/1a4bafee-562f-5eb4-d2bd-34704f8c5ab3@web.de
This commit is contained in:
parent
60aece4164
commit
c0cff7a177
@ -129,13 +129,11 @@ int __init pq2ads_pci_init_irq(void)
|
||||
irq = irq_of_parse_and_map(np, 0);
|
||||
if (!irq) {
|
||||
printk(KERN_ERR "No interrupt in pci pic node.\n");
|
||||
of_node_put(np);
|
||||
goto out;
|
||||
goto out_put_node;
|
||||
}
|
||||
|
||||
priv = kzalloc(sizeof(*priv), GFP_KERNEL);
|
||||
if (!priv) {
|
||||
of_node_put(np);
|
||||
ret = -ENOMEM;
|
||||
goto out_unmap_irq;
|
||||
}
|
||||
@ -160,17 +158,17 @@ int __init pq2ads_pci_init_irq(void)
|
||||
priv->host = host;
|
||||
irq_set_handler_data(irq, priv);
|
||||
irq_set_chained_handler(irq, pq2ads_pci_irq_demux);
|
||||
|
||||
of_node_put(np);
|
||||
return 0;
|
||||
ret = 0;
|
||||
goto out_put_node;
|
||||
|
||||
out_unmap_regs:
|
||||
iounmap(priv->regs);
|
||||
out_free_kmalloc:
|
||||
kfree(priv);
|
||||
of_node_put(np);
|
||||
out_unmap_irq:
|
||||
irq_dispose_mapping(irq);
|
||||
out_put_node:
|
||||
of_node_put(np);
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user