From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> The following changes since commit 68e26e1e812c8b09313d7929271f6cbd47ef4c07:
Merge tag 'pull-la-20220719' of https://gitlab.com/rth7680/qemu into staging (2022-07-19 22:54:43 +0100) are available in the Git repository at: https://gitlab.com/dagrh/qemu.git tags/pull-migration-20220720c for you to fetch changes up to db727a14108b5f7ee1273f94e8ccce428a646140: Revert "gitlab: disable accelerated zlib for s390x" (2022-07-20 12:15:09 +0100) ---------------------------------------------------------------- Migration pull 2022-07-20 This replaces yesterdays pull and: a) Fixes some test build errors without TLS b) Reenabled the zlib acceleration on s390 now that we have Ilya's fix Hyman's dirty page rate limit set Ilya's fix for zlib vs migration Peter's postcopy-preempt Cleanup from Dan zero-copy tidy ups from Leo multifd doc fix from Juan Revert disable of zlib acceleration on s390x Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> ---------------------------------------------------------------- Daniel P. Berrangé (1): migration: remove unreachable code after reading data Dr. David Alan Gilbert (1): Revert "gitlab: disable accelerated zlib for s390x" Hyman Huang (8): accel/kvm/kvm-all: Refactor per-vcpu dirty ring reaping cpus: Introduce cpu_list_generation_id migration/dirtyrate: Refactor dirty page rate calculation softmmu/dirtylimit: Implement vCPU dirtyrate calculation periodically accel/kvm/kvm-all: Introduce kvm_dirty_ring_size function softmmu/dirtylimit: Implement virtual CPU throttle softmmu/dirtylimit: Implement dirty page rate limit tests: Add dirty page rate limit test Ilya Leoshkevich (1): multifd: Copy pages before compressing them with zlib Juan Quintela (1): multifd: Document the locking of MultiFD{Send/Recv}Params Leonardo Bras (4): QIOChannelSocket: Fix zero-copy flush returning code 1 when nothing sent Add dirty-sync-missed-zero-copy migration stat migration/multifd: Report to user when zerocopy not working migration: Avoid false-positive on non-supported scenarios for zero-copy-send Peter Xu (14): migration: Add postcopy-preempt capability migration: Postcopy preemption preparation on channel creation migration: Postcopy preemption enablement migration: Postcopy recover with preempt enabled migration: Create the postcopy preempt channel asynchronously migration: Add property x-postcopy-preempt-break-huge migration: Add helpers to detect TLS capability migration: Export tls-[creds|hostname|authz] params to cmdline too migration: Enable TLS for preempt channel migration: Respect postcopy request order in preemption mode tests: Move MigrateCommon upper tests: Add postcopy tls migration test tests: Add postcopy tls recovery migration test tests: Add postcopy preempt tests .gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml | 12 - .travis.yml | 6 +- accel/kvm/kvm-all.c | 46 +- accel/stubs/kvm-stub.c | 5 + cpus-common.c | 8 + hmp-commands-info.hx | 13 + hmp-commands.hx | 32 ++ include/exec/cpu-common.h | 1 + include/exec/memory.h | 5 +- include/hw/core/cpu.h | 6 + include/monitor/hmp.h | 3 + include/sysemu/dirtylimit.h | 37 ++ include/sysemu/dirtyrate.h | 28 + include/sysemu/kvm.h | 2 + io/channel-socket.c | 8 +- migration/channel.c | 9 +- migration/dirtyrate.c | 227 +++++--- migration/dirtyrate.h | 7 +- migration/migration.c | 152 +++++- migration/migration.h | 44 +- migration/multifd-zlib.c | 38 +- migration/multifd.c | 6 +- migration/multifd.h | 66 ++- migration/postcopy-ram.c | 186 ++++++- migration/postcopy-ram.h | 11 + migration/qemu-file.c | 31 +- migration/qemu-file.h | 1 + migration/ram.c | 331 +++++++++++- migration/ram.h | 6 +- migration/savevm.c | 46 +- migration/socket.c | 22 +- migration/socket.h | 1 + migration/tls.c | 9 + migration/tls.h | 4 + migration/trace-events | 15 +- monitor/hmp-cmds.c | 5 + qapi/migration.json | 94 +++- softmmu/dirtylimit.c | 601 +++++++++++++++++++++ softmmu/meson.build | 1 + softmmu/trace-events | 7 + tests/qtest/migration-helpers.c | 22 + tests/qtest/migration-helpers.h | 2 + tests/qtest/migration-test.c | 543 ++++++++++++++++--- tests/qtest/qmp-cmd-test.c | 2 + 44 files changed, 2400 insertions(+), 301 deletions(-) create mode 100644 include/sysemu/dirtylimit.h create mode 100644 include/sysemu/dirtyrate.h create mode 100644 softmmu/dirtylimit.c