• Jens Axboe's avatar
    io_uring: read opcode and user_data from SQE exactly once · d625c6ee
    Jens Axboe authored
    If we defer a request, we can't be reading the opcode again. Ensure that
    the user_data and opcode fields are stable. For the user_data we already
    have a place for it, for the opcode we can fill a one byte hold and store
    that as well. For both of them, assign them when we originally read the
    SQE in io_get_sqring(). Any code that uses sqe->opcode or sqe->user_data
    is switched to req->opcode and req->user_data.
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    d625c6ee
io_uring.c 130 KB