All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] scsi: libsas: Fix error path in sas_notify_lldd_dev_found()
@ 2020-09-05 12:58 ` Dan Carpenter
  0 siblings, 0 replies; 8+ messages in thread
From: Dan Carpenter @ 2020-09-05 12:58 UTC (permalink / raw)
  To: James E.J. Bottomley, Dan Williams
  Cc: Martin K. Petersen, John Garry, Gustavo A. R. Silva, Jason Yan,
	linux-scsi, linux-kernel, kernel-janitors

In sas_notify_lldd_dev_found(), if we can't find a device, then it seems
like the wrong thing to mark the device as found and to increment the
reference count.  None of the callers ever drop the reference in that
situation.

Fixes: 735f7d2fedf5 ("[SCSI] libsas: fix domain_device leak")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 drivers/scsi/libsas/sas_discover.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c
index cd7c7d269f6f..d0f9e90e3279 100644
--- a/drivers/scsi/libsas/sas_discover.c
+++ b/drivers/scsi/libsas/sas_discover.c
@@ -182,10 +182,11 @@ int sas_notify_lldd_dev_found(struct domain_device *dev)
 		pr_warn("driver on host %s cannot handle device %016llx, error:%d\n",
 			dev_name(sas_ha->dev),
 			SAS_ADDR(dev->sas_addr), res);
+		return res;
 	}
 	set_bit(SAS_DEV_FOUND, &dev->state);
 	kref_get(&dev->kref);
-	return res;
+	return 0;
 }
 
 
-- 
2.28.0

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-09-09  2:10 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-05 12:58 [PATCH] scsi: libsas: Fix error path in sas_notify_lldd_dev_found() Dan Carpenter
2020-09-05 12:58 ` Dan Carpenter
2020-09-07  1:37 ` Jason Yan
2020-09-07  1:37   ` Jason Yan
2020-09-07  8:54 ` John Garry
2020-09-07  8:54   ` John Garry
2020-09-09  2:08 ` Martin K. Petersen
2020-09-09  2:08   ` Martin K. Petersen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.