On Fri, Oct 15, 2021 at 05:14:10PM +0200, Sebastian Andrzej Siewior wrote: > +void blk_mq_complete_request_direct(struct request *rq) > +{ > + WRITE_ONCE(rq->state, MQ_RQ_COMPLETE); > + rq->q->mq_ops->complete(rq); > +} As this is called by the driver we known what ->complete this helper would call. So instead of doing this we could just call blk_mq_set_request_complete and the actual completion helper. The comment above it will need some updates of course.