summaryrefslogtreecommitdiff
path: root/arch_init.c
diff options
context:
space:
mode:
authorOrit Wasserman <owasserm@redhat.com>2013-03-22 16:48:03 +0200
committerJuan Quintela <quintela@redhat.com>2013-03-26 13:32:33 +0100
commit500f0061d628b52220038939728f0d7aee634468 (patch)
treecaa8423bfce8331d24db8b22ebf9d88d422acf04 /arch_init.c
parent6181ec245529e0d40ac669fe3044eef3a9e19610 (diff)
downloadqemu-500f0061d628b52220038939728f0d7aee634468.tar.gz
qemu-500f0061d628b52220038939728f0d7aee634468.tar.bz2
qemu-500f0061d628b52220038939728f0d7aee634468.zip
Use qemu_put_buffer_async for guest memory pages
This will remove an unneeded copy of guest memory pages. For the page header and device state we still copy the data to the static buffer the other option is to allocate the memory on demand which is more expensive. Signed-off-by: Orit Wasserman <owasserm@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'arch_init.c')
-rw-r--r--arch_init.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch_init.c b/arch_init.c
index e1af89875e..4ef5a15a6e 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -478,7 +478,7 @@ static int ram_save_block(QEMUFile *f, bool last_stage)
/* XBZRLE overflow or normal page */
if (bytes_sent == -1) {
bytes_sent = save_block_hdr(f, block, offset, cont, RAM_SAVE_FLAG_PAGE);
- qemu_put_buffer(f, p, TARGET_PAGE_SIZE);
+ qemu_put_buffer_async(f, p, TARGET_PAGE_SIZE);
bytes_sent += TARGET_PAGE_SIZE;
acct_info.norm_pages++;
}