From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> The following changes since commit 178bacb66d98d9ee7a702b9f2a4dfcd88b72a9ab:
Merge tag 'block-pull-request' of https://gitlab.com/stefanha/qemu into staging (2022-05-09 11:07:04 -0700) are available in the Git repository at: https://gitlab.com/dagrh/qemu.git tags/pull-migration-20220510a for you to fetch changes up to 511f4a0506af1d380115a61f3362149953646871: multifd: Implement zero copy write in multifd migration (multifd-zero-copy) (2022-05-10 09:15:06 +0100) ---------------------------------------------------------------- Migration pull 2022-05-10 This replaces yesterdays and the pull originally sent on 28th April; compared to yesterdays this fixes an accidental change to skiboot. It contains: TLS test fixes from Dan Zerocopy migration feature from Leo Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> ---------------------------------------------------------------- Daniel P. Berrangé (9): tests: fix encoding of IP addresses in x509 certs tests: add more helper macros for creating TLS x509 certs tests: add migration tests of TLS with PSK credentials tests: add migration tests of TLS with x509 credentials tests: convert XBZRLE migration test to use common helper tests: convert multifd migration tests to use common helper tests: add multifd migration tests of TLS with PSK credentials tests: add multifd migration tests of TLS with x509 credentials tests: ensure migration status isn't reported as failed Leonardo Bras (7): QIOChannel: Add flags on io_writev and introduce io_flush callback QIOChannelSocket: Implement io_writev zero copy flag & io_flush for CONFIG_LINUX migration: Add zero-copy-send parameter for QMP/HMP for Linux migration: Add migrate_use_tls() helper multifd: multifd_send_sync_main now returns negative on error multifd: Send header packet without flags if zero-copy-send is enabled multifd: Implement zero copy write in multifd migration (multifd-zero-copy) chardev/char-io.c | 2 +- hw/remote/mpqemu-link.c | 2 +- include/io/channel-socket.h | 2 + include/io/channel.h | 38 +- io/channel-buffer.c | 1 + io/channel-command.c | 1 + io/channel-file.c | 1 + io/channel-socket.c | 118 ++++- io/channel-tls.c | 1 + io/channel-websock.c | 1 + io/channel.c | 49 +- meson.build | 1 + migration/channel.c | 3 +- migration/migration.c | 52 ++- migration/migration.h | 6 + migration/multifd.c | 74 ++- migration/multifd.h | 4 +- migration/ram.c | 29 +- migration/rdma.c | 1 + migration/socket.c | 12 +- monitor/hmp-cmds.c | 6 + qapi/migration.json | 24 + scsi/pr-manager-helper.c | 2 +- tests/qtest/meson.build | 12 +- tests/qtest/migration-helpers.c | 13 + tests/qtest/migration-helpers.h | 1 + tests/qtest/migration-test.c | 867 +++++++++++++++++++++++++++++++---- tests/unit/crypto-tls-psk-helpers.c | 18 +- tests/unit/crypto-tls-psk-helpers.h | 1 + tests/unit/crypto-tls-x509-helpers.c | 16 +- tests/unit/crypto-tls-x509-helpers.h | 53 +++ tests/unit/test-crypto-tlssession.c | 11 +- tests/unit/test-io-channel-socket.c | 1 + 33 files changed, 1284 insertions(+), 139 deletions(-)