In the Linux kernel, the following vulnerability has been resolved:
iouring/fdinfo: grab ctx->uringlock around iouringshow_fdinfo()
Not everything requires locking in there, which is why the 'haslock' variable exists. But enough does that it's a bit unwieldy to manage. Wrap the whole thing in a ->uringlock 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.