io_uring: overflow processing for CQE32
authorStefan Roesch <shr@fb.com>
Tue, 26 Apr 2022 18:21:30 +0000 (11:21 -0700)
committerJens Axboe <axboe@kernel.dk>
Mon, 2 May 2022 20:23:38 +0000 (14:23 -0600)
commitf0d45f442a16bc10176d1625e8978f84e7d7d91c
tree10caf69c7b1c3f8b064cc7b7093ecfe8dba6b9b6
parentcabc6e73068f228997e6d7eda0be3e43ece925dc
io_uring: overflow processing for CQE32

This adds the overflow processing for large CQE's.

This adds two parameters to the io_cqring_event_overflow function and
uses these fields to initialize the large CQE fields.

Allocate enough space for large CQE's in the overflow structue. If no
large CQE's are used, the size of the allocation is unchanged.

The cqe field can have a different size depending if its a large
CQE or not. To be able to allocate different sizes, the two fields
in the structure are re-ordered.

Co-developed-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Stefan Roesch <shr@fb.com>
Reviewed-by: Kanchan Joshi <joshi.k@samsung.com>
Link: https://lore.kernel.org/r/20220426182134.136504-9-shr@fb.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c