]> www.infradead.org Git - users/jedix/linux-maple.git/commit
io_uring: Fold allocation into alloc_cache helper
authorGabriel Krisman Bertazi <krisman@suse.de>
Mon, 16 Dec 2024 20:46:07 +0000 (15:46 -0500)
committerJens Axboe <axboe@kernel.dk>
Mon, 23 Dec 2024 15:20:41 +0000 (08:20 -0700)
commit479b2f4590bebd4a5a5ac9cb4c4803f4edf86768
tree0aec9fd3800f51dceabfb17392f2f93372bc6fea
parent29b95ac917927ce9f95bf38797e16333ecb489b1
io_uring: Fold allocation into alloc_cache helper

The allocation paths that use alloc_cache duplicate the same code
pattern, sometimes in a quite convoluted way.  Fold the allocation into
the cache code itself, making it just an allocator function, and keeping
the cache policy invisible to callers.  Another justification for doing
this, beyond code simplicity, is that it makes it trivial to test the
impact of disabling the cache and using slab directly, which I've used
for slab improvement experiments.

One relevant detail is that we provide a callback to optionally
initialize memory only when we actually reach slab.  This allows us to
avoid blindly executing the allocation with GFP_ZERO and only clean
fields when they matter.

Signed-off-by: Gabriel Krisman Bertazi <krisman@suse.de>
Link: https://lore.kernel.org/r/20241216204615.759089-2-krisman@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/alloc_cache.h