| From ba21dca50aab8c138db6935c7cff251f84abadd5 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sat, 19 Mar 2022 08:01:24 +0100 |
| Subject: scsi: zorro7xx: Fix a resource leak in zorro7xx_remove_one() |
| |
| From: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| |
| [ Upstream commit 16ed828b872d12ccba8f07bcc446ae89ba662f9c ] |
| |
| The error handling path of the probe releases a resource that is not freed |
| in the remove function. In some cases, a ioremap() must be undone. |
| |
| Add the missing iounmap() call in the remove function. |
| |
| Link: https://lore.kernel.org/r/247066a3104d25f9a05de8b3270fc3c848763bcc.1647673264.git.christophe.jaillet@wanadoo.fr |
| Fixes: 45804fbb00ee ("[SCSI] 53c700: Amiga Zorro NCR53c710 SCSI") |
| Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org> |
| Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/scsi/zorro7xx.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| diff --git a/drivers/scsi/zorro7xx.c b/drivers/scsi/zorro7xx.c |
| index 27b9e2baab1a..7acf9193a9e8 100644 |
| --- a/drivers/scsi/zorro7xx.c |
| +++ b/drivers/scsi/zorro7xx.c |
| @@ -159,6 +159,8 @@ static void zorro7xx_remove_one(struct zorro_dev *z) |
| scsi_remove_host(host); |
| |
| NCR_700_release(host); |
| + if (host->base > 0x01000000) |
| + iounmap(hostdata->base); |
| kfree(hostdata); |
| free_irq(host->irq, host); |
| zorro_release_device(z); |
| -- |
| 2.35.1 |
| |