Based on top of my next branch. - Rebased on top of latest upstream - Redo a lot of the packet accounting still not completely perfect, but much better than what is upstream
Still working continuing on that. Please review. [v2] - rebased on top of latest upstream - lots of minor fixes - start support for atomic counters * we need to move ram_limit_used/max to migration.c * that means fixing rdma.c * and test-vmstate. So I am donig that right now. Juan Quintela (11): migration: Update atomic stats out of the mutex migration: Make multifd_bytes atomic multifd: We already account for this packet on the multifd thread multifd: Count the number of bytes sent correctly migration: Make ram_save_target_page() a pointer multifd: Make flags field thread local multifd: Prepare to send a packet without the mutex held multifd: Add capability to enable/disable zero_page multifd: Support for zero pages transmission multifd: Zero pages transmission So we use multifd to transmit zero pages. qapi/migration.json | 8 ++- migration/migration.h | 1 + migration/multifd.h | 36 ++++++++++-- migration/ram.h | 1 + hw/core/machine.c | 1 + migration/migration.c | 16 +++++- migration/multifd.c | 123 +++++++++++++++++++++++++++++++---------- migration/ram.c | 51 +++++++++++++++-- migration/trace-events | 8 +-- 9 files changed, 197 insertions(+), 48 deletions(-) -- 2.39.1