Re: [PATCH 4/6] blk-mq: make blk_abort_request() trigger timeout path

From: Bart Van Assche
Date: Thu Dec 14 2017 - 13:57:03 EST


On Tue, 2017-12-12 at 11:01 -0800, Tejun Heo wrote:
> void blk_abort_request(struct request *req)
> {
> - if (blk_mark_rq_complete(req))
> - return;
>
> if (req->q->mq_ops) {
> - blk_mq_rq_timed_out(req, false);
> + req->deadline = jiffies;
> + mod_timer(&req->q->timeout, 0);
> } else {
> + if (blk_mark_rq_complete(req))
> + return;
> blk_delete_timer(req);
> blk_rq_timed_out(req);
> }

This patch makes blk_abort_request() asynchronous for blk-mq. Have all callers
been audited to verify whether this change is safe?

Thanks,

Bart.