Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

io_uring: open code io_req_cqe_overflow()

A preparation patch, just open code io_req_cqe_overflow().

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Reviewed-by: Caleb Sander Mateos <csander@purestorage.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>

authored by

Pavel Begunkov and committed by
Jens Axboe
5288b9e2 16256648

+10 -10
+10 -10
io_uring/io_uring.c
··· 739 739 return true; 740 740 } 741 741 742 - static void io_req_cqe_overflow(struct io_kiocb *req) 743 - { 744 - io_cqring_event_overflow(req->ctx, req->cqe.user_data, 745 - req->cqe.res, req->cqe.flags, 746 - req->big_cqe.extra1, req->big_cqe.extra2); 747 - memset(&req->big_cqe, 0, sizeof(req->big_cqe)); 748 - } 749 - 750 742 /* 751 743 * writes to the cq entry need to come after reading head; the 752 744 * control dependency is enough as we're using WRITE_ONCE to ··· 1427 1435 unlikely(!io_fill_cqe_req(ctx, req))) { 1428 1436 if (ctx->lockless_cq) { 1429 1437 spin_lock(&ctx->completion_lock); 1430 - io_req_cqe_overflow(req); 1438 + io_cqring_event_overflow(req->ctx, req->cqe.user_data, 1439 + req->cqe.res, req->cqe.flags, 1440 + req->big_cqe.extra1, 1441 + req->big_cqe.extra2); 1431 1442 spin_unlock(&ctx->completion_lock); 1432 1443 } else { 1433 - io_req_cqe_overflow(req); 1444 + io_cqring_event_overflow(req->ctx, req->cqe.user_data, 1445 + req->cqe.res, req->cqe.flags, 1446 + req->big_cqe.extra1, 1447 + req->big_cqe.extra2); 1434 1448 } 1449 + 1450 + memset(&req->big_cqe, 0, sizeof(req->big_cqe)); 1435 1451 } 1436 1452 } 1437 1453 __io_cq_unlock_post(ctx);