mbox series

[v1,0/1] COLO: only flush dirty ram pages from colo cache

Message ID 20200910104650.1182807-1-dereksu@qnap.com (mailing list archive)
Headers show
Series COLO: only flush dirty ram pages from colo cache | expand

Message

Derek Su Sept. 10, 2020, 10:46 a.m. UTC
In the secondary side, the colo_flush_ram_cache() calls
migration_bitmap_find_dirty() finding the dirty pages and
flushes them to host. But ram_state's ram_bulk_stage flag is always
enabled in secondary side, it leads to the whole ram pages copy
instead of only dirty pages.

In the test VM with 4GB RAM under the steady state, the
colo_flush_ram_cache() consumes 650 ms.

Here, the ram_bulk_stage flag in secondary side is disabled in the
preparation of COLO incoming process to avoid the whole dirty ram
pages flush.

After patching, the time consumption of colo_flush_ram_cache() is
reduced to 10 ms averagely.

Please help to review and give comments, thanks a lot!


Derek Su (1):
  COLO: only flush dirty ram pages from colo cache

 migration/colo.c |  6 +++++-
 migration/ram.c  | 10 ++++++++++
 migration/ram.h  |  3 +++
 3 files changed, 18 insertions(+), 1 deletion(-)