• Jens Axboe's avatar
    io_uring: make SQPOLL thread parking saner · 86e0d676
    Jens Axboe authored
    We have this weird true/false return from parking, and then some of the
    callers decide to look at that. It can lead to unbalanced parks and
    sqd locking. Have the callers check the thread status once it's parked.
    We know we have the lock at that point, so it's either valid or it's NULL.
    
    Fix race with parking on thread exit. We need to be careful here with
    ordering of the sdq->lock and the IO_SQ_THREAD_SHOULD_PARK bit.
    
    Rename sqd->completion to sqd->parked to reflect that this is the only
    thing this completion event doesn.
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    86e0d676
io_uring.c 238 KB