On 8/12/19 5:36 AM, zhengbin wrote:
> blk_exit_queue will free elevator_data, while blk_mq_requeue_work
> will access it. Move cancel of requeue_work to the front of
> blk_exit_queue to avoid use-after-free.
> 
> blk_exit_queue                blk_mq_requeue_work
>    __elevator_exit               blk_mq_run_hw_queues
>      blk_mq_exit_sched             blk_mq_run_hw_queue
>        dd_exit_queue                 blk_mq_hctx_has_pending
>          kfree(elevator_data)          blk_mq_sched_has_work
>                                          dd_has_work

Applied, thanks.

-- 
Jens Axboe

Reply via email to