io_uring: remove need for sqd->ctx_lock in io_sq_thread()
We have two things we need to synchronize against for the sqd ctx lists:
1) Additions/deletions on the list between users and the thread. We now
handle that through parking the thread before we manipulate the list,
eliminating the need for the SQPOLL thread to continually grab and
release the mutex.
2) Multiple rings manipulating the list. We retain the sqd->ctx_lock to
synchronize between users adding or removing entries.
Signed-off-by: Jens Axboe <axboe@kernel.dk>