mirror of
https://github.com/openharmony/third_party_liburing.git
synced 2026-07-20 22:58:41 -04:00
liburing: return correct ring size for large CQE's
Return the correct ring_size when large CQE's are used. Signed-off-by: Stefan Roesch <shr@fb.com> Link: https://lore.kernel.org/r/20220425182639.2446370-4-shr@fb.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
committed by
Jens Axboe
parent
92e42ff6bc
commit
16850a211c
+5
-2
@@ -257,8 +257,11 @@ static size_t rings_size(struct io_uring_params *p, unsigned entries,
|
||||
{
|
||||
size_t pages, sq_size, cq_size;
|
||||
|
||||
cq_size = KRING_SIZE;
|
||||
cq_size += cq_entries * sizeof(struct io_uring_cqe);
|
||||
cq_size = sizeof(struct io_uring_cqe);
|
||||
if (p->flags & IORING_SETUP_CQE32)
|
||||
cq_size += sizeof(struct io_uring_cqe);
|
||||
cq_size *= cq_entries;
|
||||
cq_size += KRING_SIZE;
|
||||
cq_size = (cq_size + 63) & ~63UL;
|
||||
pages = (size_t) 1 << npages(cq_size, page_size);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user