• Jens Axboe's avatar
    io_uring: allow user configurable IO thread CPU affinity · fe76421d
    Jens Axboe authored
    io-wq defaults to per-node masks for IO workers. This works fine by
    default, but isn't particularly handy for workloads that prefer more
    specific affinities, for either performance or isolation reasons.
    
    This adds IORING_REGISTER_IOWQ_AFF that allows the user to pass in a CPU
    mask that is then applied to IO thread workers, and an
    IORING_UNREGISTER_IOWQ_AFF that simply resets the masks back to the
    default of per-node.
    
    Note that no care is given to existing IO threads, they will need to go
    through a reschedule before the affinity is correct if they are already
    running or sleeping.
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    fe76421d
io-wq.c 25.9 KB