diff --git a/qla2x00t/qla2x00-target/qla2x00t.c b/qla2x00t/qla2x00-target/qla2x00t.c index fe17f7608..be0f5e060 100644 --- a/qla2x00t/qla2x00-target/qla2x00t.c +++ b/qla2x00t/qla2x00-target/qla2x00t.c @@ -924,7 +924,7 @@ out_unlock: if (!ha_locked) spin_unlock_irqrestore(&ha->hardware_lock, flags); - if (do_tgt_cmd_done) { + if (do_tgt_cmd_done && !in_interrupt()) { msleep(250); scst_tgt_cmd_done(cmd->scst_cmd); /* !! At this point cmd could be already freed !! */