[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 05/41] arch_init/ram_save_live: factor out RAM_SA
From: |
Isaku Yamahata |
Subject: |
[Qemu-devel] [PATCH v2 05/41] arch_init/ram_save_live: factor out RAM_SAVE_FLAG_MEM_SIZE case |
Date: |
Mon, 4 Jun 2012 18:57:07 +0900 |
Signed-off-by: Isaku Yamahata <address@hidden>
---
arch_init.c | 21 ++++++++++++++-------
migration.h | 1 +
2 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/arch_init.c b/arch_init.c
index 36ece1d..28e5abb 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -287,6 +287,19 @@ void sort_ram_list(void)
g_free(blocks);
}
+void ram_save_live_mem_size(QEMUFile *f)
+{
+ RAMBlock *block;
+
+ qemu_put_be64(f, ram_bytes_total() | RAM_SAVE_FLAG_MEM_SIZE);
+
+ QLIST_FOREACH(block, &ram_list.blocks, next) {
+ qemu_put_byte(f, strlen(block->idstr));
+ qemu_put_buffer(f, (uint8_t *)block->idstr, strlen(block->idstr));
+ qemu_put_be64(f, block->length);
+ }
+}
+
int ram_save_live(QEMUFile *f, int stage, void *opaque)
{
ram_addr_t addr;
@@ -321,13 +334,7 @@ int ram_save_live(QEMUFile *f, int stage, void *opaque)
memory_global_dirty_log_start();
- qemu_put_be64(f, ram_bytes_total() | RAM_SAVE_FLAG_MEM_SIZE);
-
- QLIST_FOREACH(block, &ram_list.blocks, next) {
- qemu_put_byte(f, strlen(block->idstr));
- qemu_put_buffer(f, (uint8_t *)block->idstr, strlen(block->idstr));
- qemu_put_be64(f, block->length);
- }
+ ram_save_live_mem_size(f);
}
bytes_transferred_last = bytes_transferred;
diff --git a/migration.h b/migration.h
index 8b9509c..e2e9b43 100644
--- a/migration.h
+++ b/migration.h
@@ -78,6 +78,7 @@ uint64_t ram_bytes_total(void);
void sort_ram_list(void);
int ram_save_block(QEMUFile *f);
+void ram_save_live_mem_size(QEMUFile *f);
int ram_save_live(QEMUFile *f, int stage, void *opaque);
int ram_load(QEMUFile *f, void *opaque, int version_id);
--
1.7.1.1
- [Qemu-devel] [PATCH v2 00/41] postcopy live migration, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 16/41] savevm: qemu_pending_size() to return pending buffered size, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 04/41] arch_init: refactor host_from_stream_offset(), Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 06/41] arch_init: refactor ram_save_block(), Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 03/41] arch_init/ram_save: introduce constant for ram save version = 4, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 17/41] savevm, buffered_file: introduce method to drain buffer of buffered file, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 20/41] savevm/QEMUFileSocket: drop duplicated member fd, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 01/41] arch_init: export sort_ram_list() and ram_save_block(), Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 18/41] QEMUFile: add qemu_file_fd() for later use, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 24/41] migration: export migrate_fd_completed() and migrate_fd_cleanup(), Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 05/41] arch_init/ram_save_live: factor out RAM_SAVE_FLAG_MEM_SIZE case,
Isaku Yamahata <=
- [Qemu-devel] [PATCH v2 31/41] configure: add CONFIG_POSTCOPY option, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 22/41] savevm/QEMUFile: introduce qemu_fopen_fd, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 09/41] arch_init: introduce helper function to find ram block with id string, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 02/41] arch_init: export RAM_SAVE_xxx flags for postcopy, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 13/41] exec.c: factor out qemu_get_ram_ptr(), Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 21/41] savevm: rename QEMUFileSocket to QEMUFileFD, socket_close to fd_close, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 11/41] arch_init: factor out counting transferred bytes, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 27/41] buffered_file: Introduce QEMUFileNonblock for nonblock write, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 07/41] arch_init/ram_save_live: factor out ram_save_limit, Isaku Yamahata, 2012/06/04
- [Qemu-devel] [PATCH v2 23/41] migration.c: remove redundant line in migrate_init(), Isaku Yamahata, 2012/06/04