Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
ram: Let colo_flush_ram_cache take the bitmap_mutex
This is not required, colo_flush_ram_cache does not run concurrently
with the multifd threads since the cache is only flushed after
everything has been received. But it makes me more comfortable.

This will be used in the next commits to add colo support to multifd.

Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id: <35cb23ba854151d38a31e3a5c8a1020e4283cb4a.1683572883.git.lukasstraub2@web.de>
Signed-off-by: Juan Quintela <quintela@redhat.com>
  • Loading branch information
Lukey3332 authored and Juan Quintela committed May 10, 2023
1 parent 871cfc5 commit 9d63840
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions migration/ram.c
Expand Up @@ -3814,6 +3814,7 @@ void colo_flush_ram_cache(void)
unsigned long offset = 0;

memory_global_dirty_log_sync();
qemu_mutex_lock(&ram_state->bitmap_mutex);
WITH_RCU_READ_LOCK_GUARD() {
RAMBLOCK_FOREACH_NOT_IGNORED(block) {
ramblock_sync_dirty_bitmap(ram_state, block);
Expand Down Expand Up @@ -3848,6 +3849,7 @@ void colo_flush_ram_cache(void)
}
}
}
qemu_mutex_unlock(&ram_state->bitmap_mutex);
trace_colo_flush_ram_cache_end();
}

Expand Down

0 comments on commit 9d63840

Please sign in to comment.