[SCSI] libsas: kill spurious sas_put_device
authorMaciej Trela <maciej.trela@intel.com>
Fri, 13 Jan 2012 21:52:38 +0000 (21:52 +0000)
committerJames Bottomley <JBottomley@Parallels.com>
Wed, 29 Feb 2012 21:27:44 +0000 (15:27 -0600)
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>
drivers/scsi/libsas/sas_discover.c

index 4be5ddad7be70032ed01d17d8352ec3034122c77..c1ac99d25f5ecaf84616cee50d5248b6c2130e6a 100644 (file)
@@ -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);
        }
 }