]> Git Repo - qemu.git/commit - qemu-coroutine-io.c
sheepdog: move coroutine send/recv function to generic code
authorPaolo Bonzini <[email protected]>
Thu, 8 Sep 2011 11:46:25 +0000 (13:46 +0200)
committerPaolo Bonzini <[email protected]>
Thu, 22 Dec 2011 10:53:53 +0000 (11:53 +0100)
commit8c5135f90e2dcf1d5c3d03106e0ac6e371ccb572
tree5c5976aeb886b20ea1f564cc828b448e56fcbebd
parent993295fedc5fefaefee9ac80e057d8bf08026ef4
sheepdog: move coroutine send/recv function to generic code

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 <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
Makefile.objs
block/sheepdog.c
cutils.c
qemu-common.h
qemu-coroutine-io.c [new file with mode: 0644]
This page took 0.026585 seconds and 4 git commands to generate.