[PATCH] scsi: sni_53c710: put SCSI host on remove

Guangshuo Li posted 1 patch 6 days, 5 hours ago
drivers/scsi/sni_53c710.c | 1 +
1 file changed, 1 insertion(+)
[PATCH] scsi: sni_53c710: put SCSI host on remove
Posted by Guangshuo Li 6 days, 5 hours ago
snirm710_probe() obtains a SCSI host through NCR_700_detect(). The
probe failure path drops the host reference with scsi_host_put(), but
the normal remove path does not perform the corresponding cleanup.

As a result, the SCSI host reference remains allocated after the
device is removed.

Call scsi_host_put() after all users of the SCSI host have been torn
down to release the reference acquired during probe.

This issue was found by manual code inspection.

Fixes: c27d85f3f3c5 ("[SCSI] SNI RM 53c710 driver")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
---
 drivers/scsi/sni_53c710.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/scsi/sni_53c710.c b/drivers/scsi/sni_53c710.c
index b504a2cc5041..7c5b1929a6a7 100644
--- a/drivers/scsi/sni_53c710.c
+++ b/drivers/scsi/sni_53c710.c
@@ -115,6 +115,7 @@ static void snirm710_driver_remove(struct platform_device *dev)
 	free_irq(host->irq, host);
 	iounmap(hostdata->base);
 	kfree(hostdata);
+	scsi_host_put(host);
 }
 
 static struct platform_driver snirm710_driver = {
-- 
2.43.0