diff options
| author | Pavel Begunkov <asml.silence@gmail.com> | 2026-08-07 14:19:19 +0100 |
|---|---|---|
| committer | Jens Axboe <axboe@kernel.dk> | 2026-08-15 17:29:56 -0600 |
| commit | 1afcef59fea02c271f5bcf3496402c34b3508a0f (patch) | |
| tree | 461a577bd47487ed0b6fcb45198638f82e412772 /tools/perf/scripts/python | |
| parent | 297b5ccea4acacaa47c150f043bce695202afbf1 (diff) | |
io_uring/zcrx: scale refilling with large pages
io_zcrx_ring_refill() caps the loop by mixing the max number of
allocated netmems and the number of available RQEs together, which
caps the number of entries to process the pp cache size. As a result,
when niovs are heavily fragmented, the refilling logic allocates only a
small number of niovs per call on average and sometimes even none.
Keep a separate counter for the number of processed RQ entries, which is
capped by a roughly calculated from the page size value to keep the
cache full. And separately break if it allocates enough niovs.
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://patch.msgid.link/143cf439299728759eb0a840c866363fe99293f0.1786108672.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
