Re: [PATCH v2 2/2] io_uring: Create define to modify a SQPOLL parameter

From: Pavel Begunkov
Date: Wed Jun 23 2021 - 18:15:52 EST


On 6/23/21 7:50 PM, Olivier Langlois wrote:
> The magic number used to cap the number of entries extracted from an
> io_uring instance SQ before moving to the other instances is an
> interesting parameter to experiment with.
>
> A define has been created to make it easy to change its value from a
> single location.

It's better to send fixes separately from other improvements,
because the process a bit different for them, go into different
branches and so on.

Jens, any chance you can pick as is (at least 1/2)?

Reviewed-by: Pavel Begunkov <asml.silence@xxxxxxxxx>

> Signed-off-by: Olivier Langlois <olivier@xxxxxxxxxxxxxx>
> ---
> fs/io_uring.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/fs/io_uring.c b/fs/io_uring.c
> index 7c545fa66f31..e7997f9bf879 100644
> --- a/fs/io_uring.c
> +++ b/fs/io_uring.c
> @@ -89,6 +89,7 @@
>
> #define IORING_MAX_ENTRIES 32768
> #define IORING_MAX_CQ_ENTRIES (2 * IORING_MAX_ENTRIES)
> +#define IORING_SQPOLL_CAP_ENTRIES_VALUE 8
>
> /*
> * Shift of 9 is 512 entries, or exactly one page on 64-bit archs
> @@ -6797,8 +6798,8 @@ static int __io_sq_thread(struct io_ring_ctx *ctx, bool cap_entries)
>
> to_submit = io_sqring_entries(ctx);
> /* if we're handling multiple rings, cap submit size for fairness */
> - if (cap_entries && to_submit > 8)
> - to_submit = 8;
> + if (cap_entries && to_submit > IORING_SQPOLL_CAP_ENTRIES_VALUE)
> + to_submit = IORING_SQPOLL_CAP_ENTRIES_VALUE;
>
> if (!list_empty(&ctx->iopoll_list) || to_submit) {
> unsigned nr_events = 0;
>

--
Pavel Begunkov