[SCSI] fusion: do not check serial_number in the abort handler
authorChristoph Hellwig <hch@infradead.org>
Mon, 4 Apr 2011 13:42:41 +0000 (09:42 -0400)
committerJames Bottomley <James.Bottomley@suse.de>
Sun, 1 May 2011 15:23:54 +0000 (10:23 -0500)
The SCSI midlayer stops all command processing when in error handling, which
means there is no chance for command reuse when the abort handler is called.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/message/fusion/mptscsih.c

index 0d9b82a44540172e986263eaf3593cef943157ce..b871ab3dbacd23ba962c7f11f5cbf0721dc31255 100644 (file)
@@ -1773,7 +1773,6 @@ mptscsih_abort(struct scsi_cmnd * SCpnt)
        int              scpnt_idx;
        int              retval;
        VirtDevice       *vdevice;
-       ulong            sn = SCpnt->serial_number;
        MPT_ADAPTER     *ioc;
 
        /* If we can't locate our host adapter structure, return FAILED status.
@@ -1859,8 +1858,7 @@ mptscsih_abort(struct scsi_cmnd * SCpnt)
                         vdevice->vtarget->id, vdevice->lun,
                         ctx2abort, mptscsih_get_tm_timeout(ioc));
 
-       if (SCPNT_TO_LOOKUP_IDX(ioc, SCpnt) == scpnt_idx &&
-           SCpnt->serial_number == sn) {
+       if (SCPNT_TO_LOOKUP_IDX(ioc, SCpnt) == scpnt_idx) {
                dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT
                    "task abort: command still in active list! (sc=%p)\n",
                    ioc->name, SCpnt));
@@ -1873,9 +1871,9 @@ mptscsih_abort(struct scsi_cmnd * SCpnt)
        }
 
  out:
-       printk(MYIOC_s_INFO_FMT "task abort: %s (rv=%04x) (sc=%p) (sn=%ld)\n",
+       printk(MYIOC_s_INFO_FMT "task abort: %s (rv=%04x) (sc=%p)\n",
            ioc->name, ((retval == SUCCESS) ? "SUCCESS" : "FAILED"), retval,
-           SCpnt, SCpnt->serial_number);
+           SCpnt);
 
        return retval;
 }