|
@@ -2685,7 +2685,8 @@ static void srpt_release_cmd(struct se_cmd *se_cmd)
|
|
struct srpt_rdma_ch *ch = ioctx->ch;
|
|
struct srpt_rdma_ch *ch = ioctx->ch;
|
|
unsigned long flags;
|
|
unsigned long flags;
|
|
|
|
|
|
- WARN_ON(ioctx->state != SRPT_STATE_DONE);
|
|
|
|
|
|
+ WARN_ON_ONCE(ioctx->state != SRPT_STATE_DONE &&
|
|
|
|
+ !(ioctx->cmd.transport_state & CMD_T_ABORTED));
|
|
|
|
|
|
if (ioctx->n_rw_ctx) {
|
|
if (ioctx->n_rw_ctx) {
|
|
srpt_free_rw_ctxs(ch, ioctx);
|
|
srpt_free_rw_ctxs(ch, ioctx);
|