aboutsummaryrefslogtreecommitdiffstats
path: root/qemu-coroutine-io.c
AgeCommit message (Collapse)AuthorFilesLines
2011-12-22sheepdog: move coroutine send/recv function to generic codePaolo Bonzini1-0/+96
Outside coroutines, avoid busy waiting on EAGAIN by temporarily making the socket blocking. The API of qemu_recvv/qemu_sendv is slightly different from do_readv/do_writev because they do not handle coroutines. It returns the number of bytes written before encountering an EAGAIN. The specificity of yielding on EAGAIN is entirely in qemu-coroutine.c. Reviewed-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>