Signed-off-by: Orit Wasserman <[email protected]>
---
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