From: Darrick J. Wong Date: Thu, 11 Jan 2007 22:14:55 +0000 (-0800) Subject: [SCSI] libsas: Don't give scsi_cmnds to the EH if they never made it to the SAS LLDD... X-Git-Tag: v2.6.21-rc1~274^2~230^2~85 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b218a0d8e250e0ae8fd4d4e45bd66a588b380752;p=pandora-kernel.git [SCSI] libsas: Don't give scsi_cmnds to the EH if they never made it to the SAS LLDD or have already returned On a system with many SAS targets, it appears possible that a scsi_cmnd can time out without ever making it to the SAS LLDD or at the same time that a completion is occurring. In both of these cases, telling the LLDD to abort the sas_task makes no sense because the LLDD won't know about the sas_task; what we really want to do is to increase the timer. Note that this involves creating another sas_task bit to indicate whether or not the task has been sent to the LLDD; I could have implemented this by slightly redefining SAS_TASK_STATE_PENDING, but this way seems cleaner. This second version amends the aic94xx portion to set the TASK_AT_INITIATOR flag for all sas_tasks that were passed to lldd_execute_task. Signed-off-by: Darrick J. Wong Signed-off-by: James Bottomley --- Reading git-diff-tree failed