Commit 58570ed8 authored by ChenLiang's avatar ChenLiang Committed by Juan Quintela
Browse files

migration: expose the bitmap_sync_count to the end



expose the count that logs the times of updating the dirty bitmap to
end user.

Signed-off-by: default avatarChenLiang <chenliang88@huawei.com>
Signed-off-by: default avatarGonglei <arei.gonglei@huawei.com>
Reviewed-by: default avatarEric Blake <eblake@redhat.com>
Signed-off-by: default avatarJuan Quintela <quintela@redhat.com>
parent 71411d35
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -537,6 +537,7 @@ static void migration_bitmap_sync(void)
        s->dirty_bytes_rate = s->dirty_pages_rate * TARGET_PAGE_SIZE;
        start_time = end_time;
        num_dirty_pages_period = 0;
        s->dirty_sync_count = bitmap_sync_count;
    }
}

+2 −0
Original line number Diff line number Diff line
@@ -188,6 +188,8 @@ void hmp_info_migrate(Monitor *mon, const QDict *qdict)
                       info->ram->normal);
        monitor_printf(mon, "normal bytes: %" PRIu64 " kbytes\n",
                       info->ram->normal_bytes >> 10);
        monitor_printf(mon, "dirty sync count: %" PRIu64 "\n",
                       info->ram->dirty_sync_count);
        if (info->ram->dirty_pages_rate) {
            monitor_printf(mon, "dirty pages rate: %" PRIu64 " pages\n",
                           info->ram->dirty_pages_rate);
+1 −0
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ struct MigrationState
    bool enabled_capabilities[MIGRATION_CAPABILITY_MAX];
    int64_t xbzrle_cache_size;
    int64_t setup_time;
    int64_t dirty_sync_count;
};

void process_incoming_migration(QEMUFile *f);
+2 −0
Original line number Diff line number Diff line
@@ -215,6 +215,7 @@ MigrationInfo *qmp_query_migrate(Error **errp)
        info->ram->normal_bytes = norm_mig_bytes_transferred();
        info->ram->dirty_pages_rate = s->dirty_pages_rate;
        info->ram->mbps = s->mbps;
        info->ram->dirty_sync_count = s->dirty_sync_count;

        if (blk_mig_active()) {
            info->has_disk = true;
@@ -248,6 +249,7 @@ MigrationInfo *qmp_query_migrate(Error **errp)
        info->ram->normal = norm_mig_pages_transferred();
        info->ram->normal_bytes = norm_mig_bytes_transferred();
        info->ram->mbps = s->mbps;
        info->ram->dirty_sync_count = s->dirty_sync_count;
        break;
    case MIG_STATE_ERROR:
        info->has_status = true;
+3 −1
Original line number Diff line number Diff line
@@ -651,13 +651,15 @@
#
# @mbps: throughput in megabits/sec. (since 1.6)
#
# @dirty-sync-count: number of times that dirty ram was synchronized (since 2.1)
#
# Since: 0.14.0
##
{ 'type': 'MigrationStats',
  'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' ,
           'duplicate': 'int', 'skipped': 'int', 'normal': 'int',
           'normal-bytes': 'int', 'dirty-pages-rate' : 'int',
           'mbps' : 'number' } }
           'mbps' : 'number', 'dirty-sync-count' : 'int' } }

##
# @XBZRLECacheStats
Loading