• Jens Axboe's avatar
    io_uring: use TWA_SIGNAL for task_work uncondtionally · 0ba9c9ed
    Jens Axboe authored
    An earlier commit:
    
    b7db41c9 ("io_uring: fix regression with always ignoring signals in io_cqring_wait()")
    
    ensured that we didn't get stuck waiting for eventfd reads when it's
    registered with the io_uring ring for event notification, but we still
    have cases where the task can be waiting on other events in the kernel and
    need a bigger nudge to make forward progress. Or the task could be in the
    kernel and running, but on its way to blocking.
    
    This means that TWA_RESUME cannot reliably be used to ensure we make
    progress. Use TWA_SIGNAL unconditionally.
    
    Cc: stable@vger.kernel.org # v5.7+
    Reported-by: default avatarJosef <josef.grieb@gmail.com>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    0ba9c9ed
io_uring.c 205 KB