[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 05/12] Add block_writev_buffer function
From: |
Orit Wasserman |
Subject: |
[Qemu-devel] [RFC 05/12] Add block_writev_buffer function |
Date: |
Thu, 21 Mar 2013 11:09:24 +0200 |
Signed-off-by: Orit Wasserman <address@hidden>
---
savevm.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/savevm.c b/savevm.c
index fa07a86..2c8fb03 100644
--- a/savevm.c
+++ b/savevm.c
@@ -459,6 +459,18 @@ fail:
return NULL;
}
+static int block_writev_buffer(void *opaque, struct iovec *iov, int iovcnt)
+{
+ int i;
+ int size = 0;
+
+ for (i = 0; i < iovcnt; i++) {
+ bdrv_save_vmstate(opaque, iov[i].iov_base, 0, iov[i].iov_len);
+ size += iov[i].iov_len;
+ }
+ return size;
+}
+
static int block_put_buffer(void *opaque, const uint8_t *buf,
int64_t pos, int size)
{
@@ -483,6 +495,7 @@ static const QEMUFileOps bdrv_read_ops = {
static const QEMUFileOps bdrv_write_ops = {
.put_buffer = block_put_buffer,
+ .writev_buffer = block_writev_buffer,
.close = bdrv_fclose
};
--
1.7.11.7
- [Qemu-devel] [RFC 01/12] Add iov_writev to use writev to send iovec (also for files), (continued)
[Qemu-devel] [RFC 04/12] Add stdio_writev_buffer function, Orit Wasserman, 2013/03/21
[Qemu-devel] [RFC 05/12] Add block_writev_buffer function,
Orit Wasserman <=
[Qemu-devel] [RFC 06/12] Update bytes_xfer in qemu_put_byte, Orit Wasserman, 2013/03/21
[Qemu-devel] [RFC 07/12] Store the data to send also in iovec, Orit Wasserman, 2013/03/21
[Qemu-devel] [RFC 08/12] Use writev ops instead of put_buffer ops, Orit Wasserman, 2013/03/21
[Qemu-devel] [RFC 09/12] More optimized qemu_put_be64/32/16, Orit Wasserman, 2013/03/21
[Qemu-devel] [RFC 10/12] Add qemu_put_buffer_no_copy, Orit Wasserman, 2013/03/21