info->ram->mbps = s->mbps;
info->ram->dirty_sync_count = ram_counters.dirty_sync_count;
info->ram->dirty_sync_missed_zero_copy =
- ram_counters.dirty_sync_missed_zero_copy;
+ stat64_get(&ram_counters.dirty_sync_missed_zero_copy);
info->ram->postcopy_requests = ram_counters.postcopy_requests;
info->ram->page_size = page_size;
info->ram->multifd_bytes = stat64_get(&ram_counters.multifd_bytes);
return -1;
}
if (ret == 1) {
- dirty_sync_missed_zero_copy();
+ stat64_add(&ram_counters.dirty_sync_missed_zero_copy, 1);
}
return ret;
stat64_add(&ram_counters.transferred, bytes);
}
-void dirty_sync_missed_zero_copy(void)
-{
- ram_counters.dirty_sync_missed_zero_copy++;
-}
-
struct MigrationOps {
int (*ram_save_target_page)(RAMState *rs, PageSearchStatus *pss);
};
typedef struct {
int64_t dirty_pages_rate;
int64_t dirty_sync_count;
- uint64_t dirty_sync_missed_zero_copy;
+ Stat64 dirty_sync_missed_zero_copy;
uint64_t downtime_bytes;
Stat64 duplicate;
Stat64 multifd_bytes;
int ram_write_tracking_start(void);
void ram_write_tracking_stop(void);
-void dirty_sync_missed_zero_copy(void);
-
#endif