• Jens Axboe's avatar
    io_uring/msg_ring: improve handling of target CQE posting · 0617bb50
    Jens Axboe authored
    Use the exported helper for queueing task_work for message passing,
    rather than rolling our own.
    
    Note that this is only done for strict data messages for now, file
    descriptor passing messages still rely on the kernel task_work. It could
    get converted at some point if it's performance critical.
    
    This improves peak performance of message passing by about 5x in some
    basic testing, with 2 threads just sending messages to each other.
    Before this change, it was capped at around 700K/sec, with the change
    it's at over 4M/sec.
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    0617bb50
msg_ring.c 7.45 KB