Hi Jens, > Sometimes an applications wants to use multiple smaller rings, because > it's more efficient than sharing a ring. The downside of that is that > we'll create the io-wq backend separately for all of them, while they > would be perfectly happy just sharing that. > > This patchset adds support for that. io_uring_params grows an 'id' field, > which denotes an identifier for the async backend. If an application > wants to utilize sharing, it'll simply grab the id from the first ring > created, and pass it in to the next one and set IORING_SETUP_SHARED. This > allows efficient sharing of backend resources, while allowing multiple > rings in the application or library. But still all rings need to use the same creds, correct? > Not a huge fan of the IORING_SETUP_SHARED name, we should probably make > that better (I'm taking suggestions). The flag is supposed to be used for the new ring that attached to the existing workqueue, correct? What about IORING_ATTACH_TO_WORKQUEUE? metze