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, 9 May 2022 12:35:34 +0000 (06:35 -0600)
commite45a3e05008d52c6db63a3a01a9cdc7d89cd133a
tree40edc1554863f2fd2deed99798864a9051832ebb
parent0e2e5c47fed68ce203f2c6978188cc49a2a96e26
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