On 8/14/19 3:35 AM, Jackie Liu wrote:
> This patch may fix two issues:
> 
> First, when IOSQE_IO_DARIN set, the next IOs need to be inserted into defer
> list to delay execution, but link io will be actively scheduled to run by
> calling io_queue_sqe.
> 
> Second, when multiple LINK_IOs are inserted together with defer_list, the
> LINK_IO is no longer keep order.
> 
>     |-------------|
>     |   LINK_IO   |      ----> insert to defer_list  -----------
>     |-------------|                                            |
>     |   LINK_IO   |      ----> insert to defer_list  ----------|
>     |-------------|                                            |
>     |   LINK_IO   |      ----> insert to defer_list  ----------|
>     |-------------|                                            |
>     |   NORMAL_IO |      ----> insert to defer_list  ----------|
>     |-------------|                                            |
>                                                                |
>                                queue_work at same time   <-----|

Looks good, applied.

-- 
Jens Axboe

Reply via email to