Am 10.11.2025 um 16:48 hat Hanna Czenczek geschrieben: > Hi, > > See the v1 cover letter for a general overview: > > https://lists.nongnu.org/archive/html/qemu-block/2025-10/msg00501.html > > Changes in v2: > - Kept `.ret = EINPGORESS`-style initializations where they already had > been (curl, nvme) > - Dropped trivial BH waking code (i.e. which can be directly replaced by > aio_co_wake()) in iscsi, nfs, nvme > - curl: Yield in curl_do_preadv() (former curl_setup_preadv()) and > curl_find_buf() instead of returning whether curl_co_preadv() has to > yield or not > - nvme: Added a patch that annotates some functions (primarily BHs and > CBs) with which AioContext they (must) run in > - qcow2 cache-cleaning timer: Run the timer as a coroutine instead of in > a timer CB; use a CoQueue to await it exiting instead of polling > (well, we still need to poll in case we don’t run in a coroutine, but > that’s standard procedure, I believe) > - The need to initialize the CoQueue showed that there is a code path > in qcow2 that doesn’t initialize its CoMutex. Added a patch to do > that. > - Also added a patch to have the timer use realtime instead of virtual > time.
I'll still wait for your answer on patch 12 before applying (and possibly making that last change), but you can already have: Reviewed-by: Kevin Wolf <[email protected]>
