diff options
author | Jens Axboe <axboe@kernel.dk> | 2022-03-22 14:12:33 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2022-03-23 06:26:06 -0600 |
commit | 4d55f238f8b89124f73e50abbd05e413def514fe (patch) | |
tree | 708d8aab0fded171847c4c9a15689e25d42ab145 /fs/binfmt_misc.c | |
parent | d89a4fac0fbc6fe5fc24d1c9a889440dcf410368 (diff) | |
download | linux-stable-4d55f238f8b89124f73e50abbd05e413def514fe.tar.gz linux-stable-4d55f238f8b89124f73e50abbd05e413def514fe.tar.bz2 linux-stable-4d55f238f8b89124f73e50abbd05e413def514fe.zip |
io_uring: don't recycle provided buffer if punted to async worker
We only really need to recycle the buffer when going async for a file
type that has an indefinite reponse time (eg non-file/bdev). And for
files that to arm poll, the async worker will arm poll anyway and the
buffer will get recycled there.
In that latter case, we're not holding ctx->uring_lock. Ensure we take
the issue_flags into account and acquire it if we need to.
Fixes: b1c62645758e ("io_uring: recycle provided buffers if request goes async")
Reported-by: Stefan Roesch <shr@fb.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'fs/binfmt_misc.c')
0 files changed, 0 insertions, 0 deletions