diff options
author | Jens Axboe <axboe@kernel.dk> | 2025-05-13 15:02:23 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2025-05-14 07:15:28 -0600 |
commit | d871198ee431d90f5308d53998c1ba1d5db5619a (patch) | |
tree | f52bb75ede084554ec2f1138813da471ca3abd72 /net/core/dev_api.c | |
parent | f446c6311e86618a1f81eb576b56a6266307238f (diff) |
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 <jannh@google.com>
Fixes: 79cfe9e59c2a ("io_uring/register: add IORING_REGISTER_RESIZE_RINGS")
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'net/core/dev_api.c')
0 files changed, 0 insertions, 0 deletions