[v5,6/7] libsas: kill spurious sas_put_device

Message ID 20120114181039.25887.30987.stgit@localhost6.localdomain6
State Not Applicable
Delegated to: David Miller
Headers show

Commit Message

Dan Williams Jan. 14, 2012, 6:10 p.m.
From: Maciej Trela <maciej.trela@intel.com>

Holdover from a patch rework, prior to the addition of SAS_DEV_DESTROY
we were holding a reference while the destruct was pending in case the
domain was torn down before the desctruct event ran.  That case is
covered by SAS_DEV_DESTROY, and the sas_put_device() just corrupts freed
memory, or worse frees the memory while another agent holds a reference.

Signed-off-by: Maciej Trela <maciej.trela@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
 drivers/scsi/libsas/sas_discover.c |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c
index 9367101..c6681b4 100644
--- a/drivers/scsi/libsas/sas_discover.c
+++ b/drivers/scsi/libsas/sas_discover.c
@@ -281,8 +281,6 @@  static void sas_destruct_devices(struct work_struct *work)
 		dev->rphy = NULL;
 		sas_unregister_common_dev(port, dev);
-		sas_put_device(dev);