|
@@ -1975,6 +1975,7 @@ void target_execute_cmd(struct se_cmd *cmd)
|
|
}
|
|
}
|
|
|
|
|
|
cmd->t_state = TRANSPORT_PROCESSING;
|
|
cmd->t_state = TRANSPORT_PROCESSING;
|
|
|
|
+ cmd->transport_state &= ~CMD_T_PRE_EXECUTE;
|
|
cmd->transport_state |= CMD_T_ACTIVE | CMD_T_SENT;
|
|
cmd->transport_state |= CMD_T_ACTIVE | CMD_T_SENT;
|
|
spin_unlock_irq(&cmd->t_state_lock);
|
|
spin_unlock_irq(&cmd->t_state_lock);
|
|
|
|
|
|
@@ -2667,6 +2668,7 @@ int target_get_sess_cmd(struct se_cmd *se_cmd, bool ack_kref)
|
|
ret = -ESHUTDOWN;
|
|
ret = -ESHUTDOWN;
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|
|
|
|
+ se_cmd->transport_state |= CMD_T_PRE_EXECUTE;
|
|
list_add_tail(&se_cmd->se_cmd_list, &se_sess->sess_cmd_list);
|
|
list_add_tail(&se_cmd->se_cmd_list, &se_sess->sess_cmd_list);
|
|
out:
|
|
out:
|
|
spin_unlock_irqrestore(&se_sess->sess_cmd_lock, flags);
|
|
spin_unlock_irqrestore(&se_sess->sess_cmd_lock, flags);
|