diff options
| author | Caleb Sander Mateos <[email protected]> | 2025-03-04 19:48:12 +0000 |
|---|---|---|
| committer | Jens Axboe <[email protected]> | 2025-03-05 14:38:55 +0000 |
| commit | 0d83b8a9f180436a84fbdeb575696b0c3ae0ac0c (patch) | |
| tree | 63f4ee653c55050eea934f788e228f0607086dbe /io_uring/futex.c | |
| parent | io_uring/rsrc: skip NULL file/buffer checks in io_free_rsrc_node() (diff) | |
| download | kernel-0d83b8a9f180436a84fbdeb575696b0c3ae0ac0c.tar.gz kernel-0d83b8a9f180436a84fbdeb575696b0c3ae0ac0c.zip | |
io_uring: introduce io_cache_free() helper
Add a helper function io_cache_free() that returns an allocation to a
io_alloc_cache, falling back on kfree() if the io_alloc_cache is full.
This is the inverse of io_cache_alloc(), which takes an allocation from
an io_alloc_cache and falls back on kmalloc() if the cache is empty.
Convert 4 callers to use the helper.
Signed-off-by: Caleb Sander Mateos <[email protected]>
Suggested-by: Li Zetao <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jens Axboe <[email protected]>
Diffstat (limited to 'io_uring/futex.c')
| -rw-r--r-- | io_uring/futex.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/io_uring/futex.c b/io_uring/futex.c index b7581766406c..0ea4820cd8ff 100644 --- a/io_uring/futex.c +++ b/io_uring/futex.c @@ -53,12 +53,10 @@ static void __io_futex_complete(struct io_kiocb *req, io_tw_token_t tw) static void io_futex_complete(struct io_kiocb *req, io_tw_token_t tw) { - struct io_futex_data *ifd = req->async_data; struct io_ring_ctx *ctx = req->ctx; io_tw_lock(ctx, tw); - if (!io_alloc_cache_put(&ctx->futex_cache, ifd)) - kfree(ifd); + io_cache_free(&ctx->futex_cache, req->async_data); __io_futex_complete(req, tw); } |
