[PATCH 4.9 141/167] tty: Fix a possible resource leak in icom_probe

From: Greg Kroah-Hartman
Date: Mon Jun 13 2022 - 06:34:44 EST


From: Huang Guobin <huangguobin4@xxxxxxxxxx>

[ Upstream commit ee157a79e7c82b01ae4c25de0ac75899801f322c ]

When pci_read_config_dword failed, call pci_release_regions() and
pci_disable_device() to recycle the resource previously allocated.

Reviewed-by: Jiri Slaby <jirislaby@xxxxxxxxxx>
Signed-off-by: Huang Guobin <huangguobin4@xxxxxxxxxx>
Link: https://lore.kernel.org/r/20220331091005.3290753-1-huangguobin4@xxxxxxxxxx
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/tty/serial/icom.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/tty/serial/icom.c b/drivers/tty/serial/icom.c
index c60a8d5e4020..a3e420669674 100644
--- a/drivers/tty/serial/icom.c
+++ b/drivers/tty/serial/icom.c
@@ -1515,7 +1515,7 @@ static int icom_probe(struct pci_dev *dev,
retval = pci_read_config_dword(dev, PCI_COMMAND, &command_reg);
if (retval) {
dev_err(&dev->dev, "PCI Config read FAILED\n");
- return retval;
+ goto probe_exit0;
}

pci_write_config_dword(dev, PCI_COMMAND,
--
2.35.1