Messages in this thread | | | Subject | Re: [PATCH] scsi: libsas: Fix error path in sas_notify_lldd_dev_found() | From | Jason Yan <> | Date | Mon, 7 Sep 2020 09:37:05 +0800 |
| |
在 2020/9/5 20:58, Dan Carpenter 写道: > 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; > } > > >
Hi Dan, thanks for finding this,
Reviewed-by: Jason Yan <yanaijie@huawei.com>
| |