On Wed, Feb 16, 2011 at 7:11 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote: > Commit 56dd2c06 "libsas: Don't issue commands to devices that have been > hot-removed" edited Darrick's original patch to remove setting 'gone' in > the sas_deform_port() path because that prevented scsi sync cache > commands from being issued when the driver was unloaded. However, this > allows true device gone notifications (as signaled port phy events) to > trigger sync cache commands to devices that are known to be unreachable. > > Teach libsas which sas_deform_port() invocations are likely device gone > events. > > This patch also introduces sas_device_gone() which hopefully allows > subtle/tricky locking to be dropped from lldd drivers, like the > following in mvsas which is broken if the ata path is ever converted to > call lldd_execute_task() with irqs enabled: > > flags_libsas = 0; > [...] > spin_unlock_irqrestore(dev->sata_dev.ap->lock, flags_libsas); > spin_unlock_irqrestore(&mvi->lock, flags); > t->task_done(t); > spin_lock_irqsave(&mvi->lock, flags); > spin_lock_irqsave(dev->sata_dev.ap->lock, flags_libsas); > > Cc: Darrick J. Wong <djwong@xxxxxxxxxx> > Cc: Haipao Fan <haipao.fan@xxxxxxxxx> > Cc: Maciej Trela <maciej.trela@xxxxxxxxx> > Cc: David Milburn <dmilburn@xxxxxxxxxx> > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx> James, This was acked-by Jack Wang, and has been under test in the isci tree for quite a while with no ill effects. Please consider it for a post 39-rc1 fix or otherwise disposition it. Thanks, Dan -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html