|
@@ -45,29 +45,6 @@ bool set_preferred_target_page_bits(int bits);
|
|
|
*/
|
|
|
void finalize_target_page_bits(void);
|
|
|
|
|
|
-/**
|
|
|
- * Sends a (part of) iovec down a socket, yielding when the socket is full, or
|
|
|
- * Receives data into a (part of) iovec from a socket,
|
|
|
- * yielding when there is no data in the socket.
|
|
|
- * The same interface as qemu_sendv_recvv(), with added yielding.
|
|
|
- * XXX should mark these as coroutine_fn
|
|
|
- */
|
|
|
-ssize_t qemu_co_sendv_recvv(int sockfd, struct iovec *iov, unsigned iov_cnt,
|
|
|
- size_t offset, size_t bytes, bool do_send);
|
|
|
-#define qemu_co_recvv(sockfd, iov, iov_cnt, offset, bytes) \
|
|
|
- qemu_co_sendv_recvv(sockfd, iov, iov_cnt, offset, bytes, false)
|
|
|
-#define qemu_co_sendv(sockfd, iov, iov_cnt, offset, bytes) \
|
|
|
- qemu_co_sendv_recvv(sockfd, iov, iov_cnt, offset, bytes, true)
|
|
|
-
|
|
|
-/**
|
|
|
- * The same as above, but with just a single buffer
|
|
|
- */
|
|
|
-ssize_t qemu_co_send_recv(int sockfd, void *buf, size_t bytes, bool do_send);
|
|
|
-#define qemu_co_recv(sockfd, buf, bytes) \
|
|
|
- qemu_co_send_recv(sockfd, buf, bytes, false)
|
|
|
-#define qemu_co_send(sockfd, buf, bytes) \
|
|
|
- qemu_co_send_recv(sockfd, buf, bytes, true)
|
|
|
-
|
|
|
void qemu_progress_init(int enabled, float min_skip);
|
|
|
void qemu_progress_end(void);
|
|
|
void qemu_progress_print(float delta, int max);
|