Browse Source

target: lock => unlock typo in transport_lun_wait_for_tasks

target_stop_cmd() returns with the lock held and IRQs disabled.  The
intent was to unlock here.  This bug was originally added with:

commit cf572a9627c9ae86082216de109780c1d2e2ee28
Author: Christoph Hellwig <hch@infradead.org>
Date:   Tue Apr 24 00:25:05 2012 -0400

    target: move the state and execute lists to the command

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Dan Carpenter 13 years ago
parent
commit
2301917044
1 changed files with 1 additions and 1 deletions
  1. 1 1
      drivers/target/target_core_transport.c

+ 1 - 1
drivers/target/target_core_transport.c

@@ -3768,7 +3768,7 @@ static int transport_lun_wait_for_tasks(struct se_cmd *cmd, struct se_lun *lun)
 	    (cmd->transport_state & CMD_T_SENT)) {
 		if (!target_stop_cmd(cmd, &flags))
 			ret++;
-		spin_lock_irqsave(&cmd->t_state_lock, flags);
+		spin_unlock_irqrestore(&cmd->t_state_lock, flags);
 	} else {
 		spin_unlock_irqrestore(&cmd->t_state_lock,
 				flags);