summaryrefslogtreecommitdiff
path: root/drivers/scsi/zorro7xx.c
diff options
context:
space:
mode:
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>2022-03-19 08:01:24 +0100
committerMartin K. Petersen <martin.petersen@oracle.com>2022-03-30 00:05:42 -0400
commit16ed828b872d12ccba8f07bcc446ae89ba662f9c (patch)
treef1574ad6a4116e1e10e987be4b4f7503a331a1b2 /drivers/scsi/zorro7xx.c
parent37a9bd7090cdf6657ced3f693897819a66ee8d52 (diff)
downloadlwn-16ed828b872d12ccba8f07bcc446ae89ba662f9c.tar.gz
lwn-16ed828b872d12ccba8f07bcc446ae89ba662f9c.zip
scsi: zorro7xx: Fix a resource leak in zorro7xx_remove_one()
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>
Diffstat (limited to 'drivers/scsi/zorro7xx.c')
-rw-r--r--drivers/scsi/zorro7xx.c2
1 files changed, 2 insertions, 0 deletions
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);