target: Remove legacy device status check from transport_execute_tasks
authorNicholas Bellinger <nab@linux-iscsi.org>
Thu, 1 Dec 2011 02:24:03 +0000 (18:24 -0800)
committerNicholas Bellinger <nab@linux-iscsi.org>
Wed, 14 Dec 2011 11:53:29 +0000 (11:53 +0000)
This patch removes a legacy se_dev_check_online() check from within
transport_execute_tasks() that should no longer be necessary as
transport_lookup_cmd_lun() is already making this call.

Using transport_cmd_check_stop() from transport_execute_tasks() should
already be checking per se_cmd context for each descriptor upon active
I/O shutdown, so no need to acquire dev->dev_status_lock again while
executing se_task submission.

Cc: Christoph Hellwig <hch@lst.de>
Cc: Roland Dreier <roland@purestorage.com>
Cc: Joern Engel <joern@logfs.org>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_transport.c

index 373e01f523dd9844ee8589a2534b38360628d957..b5fdacce0671dd82a43c44c6949c5867475cc6f7 100644 (file)
@@ -2062,13 +2062,6 @@ static int transport_execute_tasks(struct se_cmd *cmd)
 {
        int add_tasks;
        struct se_device *se_dev = cmd->se_dev;
-
-       if (se_dev_check_online(cmd->se_dev) != 0) {
-               cmd->scsi_sense_reason = TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
-               transport_generic_request_failure(cmd);
-               return 0;
-       }
-
        /*
         * Call transport_cmd_check_stop() to see if a fabric exception
         * has occurred that prevents execution.