blk-mq: Allow requests to never expire
[linux-2.6-block.git] / block / blk-mq.c
index 261ccd89e15d5578eba5aaece8feb47be5f7a5e6..78324a2f0e107b2e15deaf49d3839d2df5267983 100644 (file)
@@ -619,7 +619,7 @@ void blk_mq_rq_timed_out(struct request *req, bool reserved)
                break;
        }
 }
-               
+
 static void blk_mq_check_expired(struct blk_mq_hw_ctx *hctx,
                struct request *rq, void *priv, bool reserved)
 {
@@ -627,6 +627,8 @@ static void blk_mq_check_expired(struct blk_mq_hw_ctx *hctx,
 
        if (!test_bit(REQ_ATOM_STARTED, &rq->atomic_flags))
                return;
+       if (rq->cmd_flags & REQ_NO_TIMEOUT)
+               return;
 
        if (time_after_eq(jiffies, rq->deadline)) {
                if (!blk_mark_rq_complete(rq))