Hi It includes: - Leonardo fix for zero_copy flush - Fiona fix for return value of readv/writev - Peter Xu cleanups - Peter Xu preempt patches - Patches ready from zero page (me) - AVX2 support (ling) - fix for slow networking and reordering of first packets (manish)
Please, apply. Fiona Ebner (1): migration/channel-block: fix return value for qio_channel_block_{readv,writev} Juan Quintela (5): multifd: Create page_size fields into both MultiFD{Recv,Send}Params multifd: Create page_count fields into both MultiFD{Recv,Send}Params migration: Export ram_transferred_ram() migration: Export ram_release_page() migration: Block migration comment or code is wrong Leonardo Bras (1): migration/multifd/zero-copy: Create helper function for flushing Peter Xu (20): migration: Fix possible infinite loop of ram save process migration: Fix race on qemu_file_shutdown() migration: Disallow postcopy preempt to be used with compress migration: Use non-atomic ops for clear log bitmap migration: Disable multifd explicitly with compression migration: Take bitmap mutex when completing ram migration migration: Add postcopy_preempt_active() migration: Cleanup xbzrle zero page cache update logic migration: Trivial cleanup save_page_header() on same block check migration: Remove RAMState.f references in compression code migration: Yield bitmap_mutex properly when sending/sleeping migration: Use atomic ops properly for page accountings migration: Teach PSS about host page migration: Introduce pss_channel migration: Add pss_init() migration: Make PageSearchStatus part of RAMState migration: Move last_sent_block into PageSearchStatus migration: Send requested page directly in rp-return thread migration: Remove old preempt code around state maintainance migration: Drop rs->f ling xu (2): Update AVX512 support for xbzrle_encode_buffer Unit test code and benchmark code manish.mishra (1): migration: check magic value for deciding the mapping of channels meson.build | 16 + include/exec/ram_addr.h | 11 +- include/exec/ramblock.h | 3 + include/io/channel.h | 25 ++ include/qemu/bitmap.h | 1 + migration/migration.h | 7 - migration/multifd.h | 10 +- migration/postcopy-ram.h | 2 +- migration/ram.h | 23 + migration/xbzrle.h | 4 + io/channel-socket.c | 27 ++ io/channel.c | 39 ++ migration/block.c | 4 +- migration/channel-block.c | 6 +- migration/migration.c | 109 +++-- migration/multifd-zlib.c | 14 +- migration/multifd-zstd.c | 12 +- migration/multifd.c | 69 +-- migration/postcopy-ram.c | 5 +- migration/qemu-file.c | 27 +- migration/ram.c | 794 +++++++++++++++++----------------- migration/xbzrle.c | 124 ++++++ tests/bench/xbzrle-bench.c | 465 ++++++++++++++++++++ tests/unit/test-xbzrle.c | 39 +- util/bitmap.c | 45 ++ meson_options.txt | 2 + scripts/meson-buildoptions.sh | 14 +- tests/bench/meson.build | 4 + 28 files changed, 1379 insertions(+), 522 deletions(-) create mode 100644 tests/bench/xbzrle-bench.c -- 2.38.1