• Jens Axboe's avatar
    io_uring: run dependent links inline if possible · ba816ad6
    Jens Axboe authored
    Currently any dependent link is executed from a new workqueue context,
    which means that we'll be doing a context switch per link in the chain.
    If we are running the completion of the current request from our async
    workqueue and find that the next request is a link, then run it directly
    from the workqueue context instead of forcing another switch.
    
    This improves the performance of linked SQEs, and reduces the CPU
    overhead.
    Reviewed-by: default avatarJackie Liu <liuyun01@kylinos.cn>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    ba816ad6
io_uring.c 97.6 KB