Am 28.10.2025 um 17:33 hat Hanna Czenczek geschrieben: > The request coroutine may not run in the BDS AioContext. We should wake > it in its own context, not move it. > > With that, we can remove GlusterAIOCB.aio_context. > > Also add a comment why aio_co_schedule() is safe to use in this way. > > **Note:** Due to a lack of a gluster set-up, I have not tested this > commit. It seemed safe enough to send anyway, just maybe not to > qemu-stable. To be clear, I don’t know of any user-visible bugs that > would arise from the state without this patch; the request coroutine is > moved into the main BDS AioContext, which feels wrong, but I’m not sure > whether it can actually produce hard bugs.
Doesn't moving into a different AioContext mean that everything down to the AIO callback in the guest device runs in a different thread? That's definitely a big no-no for virtio-scsi, and I think also for virtio-blk. > I’ll leave it to others’ opinions whether to keep or drop this patch > under these circumstances. > > Signed-off-by: Hanna Czenczek <[email protected]> It looks trivially correct (famous last words...) and the bugs not unlikely to be hit, so I'd say keep it. I have no idea if the gluster library is actually thread safe, but if it isn't, that breaks before gluster_finish_aiocb(). After reentering the coroutine, the library isn't called any more. Kevin
