target: call transport_check_aborted_status from target_execute_cmd
authorChristoph Hellwig <hch@infradead.org>
Sun, 8 Jul 2012 19:58:40 +0000 (15:58 -0400)
committerNicholas Bellinger <nab@linux-iscsi.org>
Tue, 17 Jul 2012 00:35:16 +0000 (17:35 -0700)
When we call target_execute_cmd for write commands the command has been
on the state list before an abort might have come in before
target_execute_cmd.  Call transport_check_aborted_status to deal with
this case.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_transport.c

index aeb2d576dc00784e678ec0f6d502939ce9ce4198..dd9c87f62d7655b2bc7e8a8326b3dd5f353b1246 100644 (file)
@@ -1864,6 +1864,12 @@ void target_execute_cmd(struct se_cmd *cmd)
 {
        struct se_device *dev = cmd->se_dev;
 
+       /*
+        * If the received CDB has aleady been aborted stop processing it here.
+        */
+       if (transport_check_aborted_status(cmd, 1))
+               return;
+
        /*
         * Determine if IOCTL context caller in requesting the stopping of this
         * command for LUN shutdown purposes.