diff options
| author | Jens Axboe <[email protected]> | 2025-05-13 21:02:23 +0000 |
|---|---|---|
| committer | Jens Axboe <[email protected]> | 2025-05-14 13:15:28 +0000 |
| commit | d871198ee431d90f5308d53998c1ba1d5db5619a (patch) | |
| tree | f52bb75ede084554ec2f1138813da471ca3abd72 /rust/helpers/mutex.c | |
| parent | io_uring/memmap: don't use page_address() on a highmem page (diff) | |
| download | kernel-d871198ee431d90f5308d53998c1ba1d5db5619a.tar.gz kernel-d871198ee431d90f5308d53998c1ba1d5db5619a.zip | |
io_uring/fdinfo: grab ctx->uring_lock around io_uring_show_fdinfo()
Not everything requires locking in there, which is why the 'has_lock'
variable exists. But enough does that it's a bit unwieldy to manage.
Wrap the whole thing in a ->uring_lock trylock, and just return
with no output if we fail to grab it. The existing trylock() will
already have greatly diminished utility/output for the failure case.
This fixes an issue with reading the SQE fields, if the ring is being
actively resized at the same time.
Reported-by: Jann Horn <[email protected]>
Fixes: 79cfe9e59c2a ("io_uring/register: add IORING_REGISTER_RESIZE_RINGS")
Signed-off-by: Jens Axboe <[email protected]>
Diffstat (limited to 'rust/helpers/mutex.c')
0 files changed, 0 insertions, 0 deletions
