Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8f3b8fa9afe75cafc4feb317d305444f6c5271fb
Commit:     8f3b8fa9afe75cafc4feb317d305444f6c5271fb
Parent:     c8490f3a77805d04321d9e44486a679801a035b8
Author:     Darrick J. Wong <[EMAIL PROTECTED]>
AuthorDate: Thu Jan 11 14:15:12 2007 -0800
Committer:  James Bottomley <[EMAIL PROTECTED]>
CommitDate: Sat Jan 13 16:16:41 2007 -0600

    [SCSI] aic94xx: Don't eat TMF_QUERY_TASK results
    
    In this driver, TMF_QUERY_TASK translates to QUERY_SSP_TASK.  The
    sequencer, it seems, is perfectly happy sending us a SSP response, which
    this function promptly "converts" into TMF_RESP_FUNC_FAILED.  This leads to
    the SAS EH making bad decisions based on bad data, so we should not perform
    the conversion in this case.
    
    Signed-off-by: Darrick J. Wong <[EMAIL PROTECTED]>
    Signed-off-by: James Bottomley <[EMAIL PROTECTED]>
---
 drivers/scsi/aic94xx/aic94xx_tmf.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/scsi/aic94xx/aic94xx_tmf.c 
b/drivers/scsi/aic94xx/aic94xx_tmf.c
index 6123438..fd5269e 100644
--- a/drivers/scsi/aic94xx/aic94xx_tmf.c
+++ b/drivers/scsi/aic94xx/aic94xx_tmf.c
@@ -566,6 +566,11 @@ static int asd_initiate_ssp_tmf(struct domain_device *dev, 
u8 *lun,
                res = TMF_RESP_FUNC_ESUPP;
                break;
        default:
+               if (tmf == TMF_QUERY_TASK) {
+                       ASD_DPRINTK("%s: QUERY_SSP_TASK response: 0x%x\n",
+                                   __FUNCTION__, res);
+                       break;
+               }
                ASD_DPRINTK("%s: converting result 0x%x to 
TMF_RESP_FUNC_FAILED\n",
                            __FUNCTION__, res);
                res = TMF_RESP_FUNC_FAILED;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to