blk_mq_tag_to_rq() will always return a request if the command_id is in the valid range. Check if the request has been started. If we blindly process the request we might double complete a request which can be fatal.
How did you get to this one? did the controller send a completion for a completed/bogus request?