summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaciej Trela <maciej.trela@intel.com>2012-01-13 22:52:38 +0100
committerJames Bottomley <JBottomley@Parallels.com>2012-02-29 22:27:44 +0100
commitfdfd9d1b8912991d88fc29a456867c62515218f9 (patch)
tree4537befd93ba3821dc679d3352793e149bc3c944
parent[SCSI] libsas: fix sas_unregister_ports vs sas_drain_work (diff)
downloadlinux-fdfd9d1b8912991d88fc29a456867c62515218f9.tar.xz
linux-fdfd9d1b8912991d88fc29a456867c62515218f9.zip
[SCSI] libsas: kill spurious sas_put_device
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> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r--drivers/scsi/libsas/sas_discover.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c
index 4be5ddad7be7..c1ac99d25f5e 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)
sas_rphy_delete(dev->rphy);
dev->rphy = NULL;
sas_unregister_common_dev(port, dev);
-
- sas_put_device(dev);
}
}