From: Ming Lei Date: Fri, 3 Jan 2014 17:00:08 +0000 (-0700) Subject: blk-mq: fix initializing request's start time X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=0fec08b4ecfc36fd8a64432343b2964fb86d2675;p=openwrt%2Fstaging%2Fblogic.git blk-mq: fix initializing request's start time blk_rq_init() is called in req's complete handler to initialize the request, so the members of start_time and start_time_ns might become inaccurate when it is allocated in future. The patch initializes the two members in blk_mq_rq_ctx_init() to fix the problem. Signed-off-by: Ming Lei Signed-off-by: Jens Axboe --- diff --git a/block/blk-mq.c b/block/blk-mq.c index 6914f9bd470a..473ce4039060 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -190,6 +190,8 @@ static void blk_mq_rq_ctx_init(struct request_queue *q, struct blk_mq_ctx *ctx, rq->mq_ctx = ctx; rq->cmd_flags = rw_flags; + rq->start_time = jiffies; + set_start_time_ns(rq); ctx->rq_dispatched[rw_is_sync(rw_flags)]++; }