]> err.no Git - linux-2.6/commitdiff
[SCSI] libsas: Remove SAS_TASK_INITIATOR_ABORTED flag
authorDarrick J. Wong <djwong@us.ibm.com>
Thu, 11 Jan 2007 22:15:15 +0000 (14:15 -0800)
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>
Sat, 13 Jan 2007 22:17:04 +0000 (16:17 -0600)
This flag is no longer necessary because we push tasks to be aborted into
the EH as soon as we possibly can, and let the SCSI EH code take care of
the coordination for which this flag was used.

Signed-off-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/libsas/sas_scsi_host.c
include/scsi/libsas.h

index 3f647c695da5c940b784915ec38bd4e5e5d19130..f90c332474c8f6d62ef5bcb24cbc75632338bd45 100644 (file)
@@ -310,15 +310,6 @@ static enum task_disposition sas_scsi_find_task(struct sas_task *task)
                spin_unlock_irqrestore(&core->task_queue_lock, flags);
        }
 
-       spin_lock_irqsave(&task->task_state_lock, flags);
-       if (task->task_state_flags & SAS_TASK_INITIATOR_ABORTED) {
-               spin_unlock_irqrestore(&task->task_state_lock, flags);
-               SAS_DPRINTK("%s: task 0x%p already aborted\n",
-                           __FUNCTION__, task);
-               return TASK_IS_ABORTED;
-       }
-       spin_unlock_irqrestore(&task->task_state_lock, flags);
-
        for (i = 0; i < 5; i++) {
                SAS_DPRINTK("%s: aborting task 0x%p\n", __FUNCTION__, task);
                res = si->dft->lldd_abort_task(task);
@@ -534,12 +525,6 @@ enum scsi_eh_timer_return sas_scsi_timed_out(struct scsi_cmnd *cmd)
        }
 
        spin_lock_irqsave(&task->task_state_lock, flags);
-       if (task->task_state_flags & SAS_TASK_INITIATOR_ABORTED) {
-               spin_unlock_irqrestore(&task->task_state_lock, flags);
-               SAS_DPRINTK("command 0x%p, task 0x%p, aborted by initiator: "
-                           "EH_NOT_HANDLED\n", cmd, task);
-               return EH_NOT_HANDLED;
-       }
        if (task->task_state_flags & SAS_TASK_STATE_DONE) {
                spin_unlock_irqrestore(&task->task_state_lock, flags);
                SAS_DPRINTK("command 0x%p, task 0x%p, timed out: EH_HANDLED\n",
@@ -826,7 +811,6 @@ static int do_sas_task_abort(struct sas_task *task)
                return 0;
        }
 
-       task->task_state_flags |= SAS_TASK_INITIATOR_ABORTED;
        if (!(task->task_state_flags & SAS_TASK_STATE_DONE))
                task->task_state_flags |= SAS_TASK_STATE_ABORTED;
        spin_unlock_irqrestore(&task->task_state_lock, flags);
@@ -849,7 +833,6 @@ static int do_sas_task_abort(struct sas_task *task)
        }
 
        spin_lock_irqsave(&task->task_state_lock, flags);
-       task->task_state_flags &= ~SAS_TASK_INITIATOR_ABORTED;
        if (!(task->task_state_flags & SAS_TASK_STATE_DONE))
                task->task_state_flags &= ~SAS_TASK_STATE_ABORTED;
        spin_unlock_irqrestore(&task->task_state_lock, flags);
index 0689d6682aa328b94be879e3765fdfb59f109bf5..1d394855b3667b1496ca8de7b992d993abb94c8e 100644 (file)
@@ -553,7 +553,6 @@ struct sas_task {
 #define SAS_TASK_STATE_PENDING      1
 #define SAS_TASK_STATE_DONE         2
 #define SAS_TASK_STATE_ABORTED      4
-#define SAS_TASK_INITIATOR_ABORTED  8
 #define SAS_TASK_AT_INITIATOR       16
 
 static inline struct sas_task *sas_alloc_task(gfp_t flags)