aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChao Fan <fanc.fnst@cn.fujitsu.com>2017-03-21 10:22:43 +0800
committerJuan Quintela <quintela@redhat.com>2017-04-21 12:25:39 +0200
commit030ce1f8612215fcbe9d353dfeaeb2937f8e3f94 (patch)
tree32afaab27e259d05f030345d1bddf9f98cbb2da9
parent20afaed98b7b1796f2e67213e4118bc64b50b03a (diff)
ram: Add page-size to output in 'info migrate'
The number of dirty pages is output in 'pages' in the command 'info migrate', so add page-size to calculate the number of dirty pages in bytes. Signed-off-by: Chao Fan <fanc.fnst@cn.fujitsu.com> Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
-rw-r--r--hmp.c3
-rw-r--r--migration/migration.c1
-rw-r--r--qapi-schema.json5
3 files changed, 8 insertions, 1 deletions
diff --git a/hmp.c b/hmp.c
index edb8970461..be75e7118c 100644
--- a/hmp.c
+++ b/hmp.c
@@ -215,6 +215,9 @@ void hmp_info_migrate(Monitor *mon, const QDict *qdict)
info->ram->normal_bytes >> 10);
monitor_printf(mon, "dirty sync count: %" PRIu64 "\n",
info->ram->dirty_sync_count);
+ monitor_printf(mon, "page size: %" PRIu64 " kbytes\n",
+ info->ram->page_size >> 10);
+
if (info->ram->dirty_pages_rate) {
monitor_printf(mon, "dirty pages rate: %" PRIu64 " pages\n",
info->ram->dirty_pages_rate);
diff --git a/migration/migration.c b/migration/migration.c
index 92a3754923..156daf976f 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -658,6 +658,7 @@ static void populate_ram_info(MigrationInfo *info, MigrationState *s)
info->ram->mbps = s->mbps;
info->ram->dirty_sync_count = ram_dirty_sync_count();
info->ram->postcopy_requests = ram_postcopy_requests();
+ info->ram->page_size = qemu_target_page_size();
if (s->state != MIGRATION_STATUS_COMPLETED) {
info->ram->remaining = ram_bytes_remaining();
diff --git a/qapi-schema.json b/qapi-schema.json
index 250e4dc49b..01b087fa16 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -598,6 +598,9 @@
# @postcopy-requests: The number of page requests received from the destination
# (since 2.7)
#
+# @page-size: The number of bytes per page for the various page-based
+# statistics (since 2.10)
+#
# Since: 0.14.0
##
{ 'struct': 'MigrationStats',
@@ -605,7 +608,7 @@
'duplicate': 'int', 'skipped': 'int', 'normal': 'int',
'normal-bytes': 'int', 'dirty-pages-rate' : 'int',
'mbps' : 'number', 'dirty-sync-count' : 'int',
- 'postcopy-requests' : 'int' } }
+ 'postcopy-requests' : 'int', 'page-size' : 'int' } }
##
# @XBZRLECacheStats: