io_uring: allocate the two rings together
authorHristo Venev <hristo@venev.name>
Mon, 26 Aug 2019 17:23:46 +0000 (17:23 +0000)
committerJens Axboe <axboe@kernel.dk>
Tue, 27 Aug 2019 16:42:02 +0000 (10:42 -0600)
commit75b28affdd6aed1c68073ef53907c7bd822aff84
tree4a0f288bf42e5b8dfbc20c4d09dcaad41e69e59f
parent27c4d3a3252fa661b049b8f57a548bba331133e0
io_uring: allocate the two rings together

Both the sq and the cq rings have sizes just over a power of two, and
the sq ring is significantly smaller. By bundling them in a single
alllocation, we get the sq ring for free.

This also means that IORING_OFF_SQ_RING and IORING_OFF_CQ_RING now mean
the same thing. If we indicate this to userspace, we can save a mmap
call.

Signed-off-by: Hristo Venev <hristo@venev.name>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c