jsm: Remove the uart port on errors
If kzmalloc fails, the uart port is not removed causing a leak. This patch just add another label that removes the uart when the kzmalloc fails. Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
7d172bfefb
commit
abf4f6a514
|
@ -172,13 +172,15 @@ static int __devinit jsm_probe_one(struct pci_dev *pdev, const struct pci_device
|
||||||
jsm_uart_port_init here! */
|
jsm_uart_port_init here! */
|
||||||
dev_err(&pdev->dev, "memory allocation for flipbuf failed\n");
|
dev_err(&pdev->dev, "memory allocation for flipbuf failed\n");
|
||||||
rc = -ENOMEM;
|
rc = -ENOMEM;
|
||||||
goto out_free_irq;
|
goto out_free_uart;
|
||||||
}
|
}
|
||||||
|
|
||||||
pci_set_drvdata(pdev, brd);
|
pci_set_drvdata(pdev, brd);
|
||||||
pci_save_state(pdev);
|
pci_save_state(pdev);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
out_free_uart:
|
||||||
|
jsm_remove_uart_port(brd);
|
||||||
out_free_irq:
|
out_free_irq:
|
||||||
jsm_remove_uart_port(brd);
|
jsm_remove_uart_port(brd);
|
||||||
free_irq(brd->irq, brd);
|
free_irq(brd->irq, brd);
|
||||||
|
|
Loading…
Reference in New Issue