On Mon, May 09, 2022 at 12:29:53PM +0200, Paolo Bonzini wrote: > This is the initial result of reviving Marc-André's series at > https://patchew.org/QEMU/20170704220346.29244-1-marcandre.lur...@redhat.com/. > A lot of the patches are similar to the ones that Marc-André wrote, > but due to the changes in the code it was easier to redo them. > > For nbd, the patch is on top of "nbd: mark more coroutine_fns" that > I sent a few days ago and that (AIUI) Eric has already queued; only > one function was missing, much to my surprise. > > Apart from this, I also identified the following functions that > can be called both in coroutine context and outside:
snip > - qio_channel_readv_full_all_eof > - qio_channel_writev_full_all I'm trying to understand what criteria makes those two functions liable for the annotation, but not others in the I/O code ? What is the actual rule for when to apply 'coroutine_fn' annotation to a function, and does it apply transitively to up and/or down the call stack ? With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|