Commit 9aaf3543 authored by Pavel Begunkov's avatar Pavel Begunkov Committed by Jens Axboe
Browse files

io_uring: simplify nxt propagation in io_queue_sqe



Don't overuse goto's, complex control flow doesn't make compilers happy
and makes code harder to read.

Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent feaadc4f
Loading
Loading
Loading
Loading
+3 −7
Original line number Diff line number Diff line
@@ -6188,7 +6188,6 @@ again:
	 */
	if (ret == -EAGAIN && !(req->flags & REQ_F_NOWAIT)) {
		if (!io_arm_poll_handler(req)) {
punt:
			/*
			 * Queued up for async execution, worker will release
			 * submit reference when the iocb is actually submitted.
@@ -6217,12 +6216,9 @@ punt:

	if (nxt) {
		req = nxt;

		if (req->flags & REQ_F_FORCE_ASYNC) {
			linked_timeout = NULL;
			goto punt;
		}
		if (!(req->flags & REQ_F_FORCE_ASYNC))
			goto again;
		io_queue_async_work(req);
	}
exit:
	if (old_creds)