[PULL 00/30] Migration patches for 2026-08-26

Fabiano Rosas posted 30 patches 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260826142905.2315503-1-farosas@suse.de
Maintainers: Peter Xu <peterx@redhat.com>, Fabiano Rosas <farosas@suse.de>, Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>, "Michael S. Tsirkin" <mst@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Fam Zheng <fam@euphon.net>, "Philippe Mathieu-Daudé" <philmd@mailo.com>, Li Zhijian <lizhijian@fujitsu.com>, Manos Pitsidianakis <manos.pitsidianakis@linaro.org>, Laurent Vivier <lvivier@redhat.com>
docs/devel/migration/fast-snapshot-load.rst |  82 +++++
docs/devel/migration/features.rst           |   1 +
hw/pci/msix.c                               |   6 +-
hw/scsi/scsi-bus.c                          |   6 +-
include/migration/vmstate.h                 | 388 +++++++++-----------
include/qemu/notify.h                       |   2 +
include/system/ramblock.h                   |   6 +
migration/migration.c                       |  66 ++--
migration/migration.h                       |   5 +
migration/options.c                         |  20 +-
migration/postcopy-ram.c                    | 365 +++++++++++++++---
migration/postcopy-ram.h                    |   8 +-
migration/qemu-file.c                       |  11 +-
migration/qemu-file.h                       |   4 +-
migration/ram.c                             | 101 ++++-
migration/rdma.c                            | 349 ++++++------------
migration/savevm.c                          |  45 ++-
migration/savevm.h                          |   2 +
migration/trace-events                      |  83 ++---
migration/vmstate.c                         | 103 ++++--
rust/bindings/migration-sys/lib.rs          |  17 +-
rust/migration/src/vmstate.rs               |  32 +-
rust/tests/tests/vmstate_tests.rs           |  32 +-
tests/qtest/migration/file-tests.c          |  24 ++
tests/qtest/migration/misc-tests.c          |  52 ---
util/notify.c                               |   5 +
26 files changed, 1102 insertions(+), 713 deletions(-)
create mode 100644 docs/devel/migration/fast-snapshot-load.rst
[PULL 00/30] Migration patches for 2026-08-26
Posted by Fabiano Rosas 1 month ago
The following changes since commit fe11f459f640cd08f35c21f9d403517951bfd671:

  Merge tag 'fixes-pr-v1' of https://gitlab.com/marcandre.lureau/qemu into staging (2026-08-25 06:48:55 -0700)

are available in the Git repository at:

  https://gitlab.com/farosas/qemu.git tags/migration-20260826-pull-request

for you to fetch changes up to baa4631ec2731c1b03e9704c4b398d85e4e90f1f:

  migration/postcopy: fix page_requested leak for vhost-user shared pages (2026-08-26 10:07:27 -0300)

----------------------------------------------------------------
Migration pull request

- New feature: Fast Snapshot Load
- Cleanups and hardening of RDMA code
- Cleanups and hardening of vmstate code
- Fix for vhost-user postcopy hang
- Fix for CVE-2026-6426

----------------------------------------------------------------

Aadeshveer Singh (11):
  migration: Propagate error in postcopy setup functions
  migration: Extract blocktime marking helper
  migration: Rename postcopy_listen_thread_bh
  migration: Use file_bmap for RAMBlock during incoming file load
  migration: Make qemu_get_buffer_at() thread-safe
  migration: add RAMBlock field and helper for fast snapshot load
  migration: add support for fault thread to load pages from disk
  migration: add eager load thread and setup for fast snapshot load
  migration: update capability conflict test for postcopy-ram+mapped-ram
  migration/tests: Add test for fast snapshot load
  docs/migration: Add documentation for fast snapshot load feature

Fabiano Rosas (8):
  migration: Remove unused vmstate macros
  migration: Introduce VMStateStructMember
  migration: Remove redundant flags
  migration: Remove duplicate vmstate macros
  migration: Add VMS_NO_STATE flag
  migration: Check more vmstate flags
  migration: Harden vmstate_handle_alloc
  migration: Harden vmstate_size

Peter Xu (10):
  migration/rdma: Introduce RDMA_CONTROL_NUM
  migration/rdma: Remove unregister code
  migration/rdma: Stick with rdma_ prefix for all tracepoints
  migration/rdma: Drop RDMALocalBlock.is_ram_block
  migration/rdma: Drop RDMALocalBlock.unregister_bitmap
  migration/rdma: Drop RDMARegister.key.chunk
  migration/rdma: Sanity check RDMA_CONTROL_REGISTER_REQUEST on buflen
  migration/rdma: Sanity check RDMA_CONTROL_REGISTER_REQUEST chunks
  migration/rdma: Sanity check upper bound of register MR address
  migration/rdma: Sanity check compress request ranges

hongmianquan (1):
  migration/postcopy: fix page_requested leak for vhost-user shared
    pages

 docs/devel/migration/fast-snapshot-load.rst |  82 +++++
 docs/devel/migration/features.rst           |   1 +
 hw/pci/msix.c                               |   6 +-
 hw/scsi/scsi-bus.c                          |   6 +-
 include/migration/vmstate.h                 | 388 +++++++++-----------
 include/qemu/notify.h                       |   2 +
 include/system/ramblock.h                   |   6 +
 migration/migration.c                       |  66 ++--
 migration/migration.h                       |   5 +
 migration/options.c                         |  20 +-
 migration/postcopy-ram.c                    | 365 +++++++++++++++---
 migration/postcopy-ram.h                    |   8 +-
 migration/qemu-file.c                       |  11 +-
 migration/qemu-file.h                       |   4 +-
 migration/ram.c                             | 101 ++++-
 migration/rdma.c                            | 349 ++++++------------
 migration/savevm.c                          |  45 ++-
 migration/savevm.h                          |   2 +
 migration/trace-events                      |  83 ++---
 migration/vmstate.c                         | 103 ++++--
 rust/bindings/migration-sys/lib.rs          |  17 +-
 rust/migration/src/vmstate.rs               |  32 +-
 rust/tests/tests/vmstate_tests.rs           |  32 +-
 tests/qtest/migration/file-tests.c          |  24 ++
 tests/qtest/migration/misc-tests.c          |  52 ---
 util/notify.c                               |   5 +
 26 files changed, 1102 insertions(+), 713 deletions(-)
 create mode 100644 docs/devel/migration/fast-snapshot-load.rst

-- 
2.53.0
Re: [PULL 00/30] Migration patches for 2026-08-26
Posted by Richard Henderson 1 month ago
On 8/26/26 07:28, Fabiano Rosas wrote:
> The following changes since commit fe11f459f640cd08f35c21f9d403517951bfd671:
>
>    Merge tag 'fixes-pr-v1' ofhttps://gitlab.com/marcandre.lureau/qemu into staging (2026-08-25 06:48:55 -0700)
>
> are available in the Git repository at:
>
>    https://gitlab.com/farosas/qemu.git tags/migration-20260826-pull-request
>
> for you to fetch changes up to baa4631ec2731c1b03e9704c4b398d85e4e90f1f:
>
>    migration/postcopy: fix page_requested leak for vhost-user shared pages (2026-08-26 10:07:27 -0300)
>
> ----------------------------------------------------------------
> Migration pull request
>
> - New feature: Fast Snapshot Load
> - Cleanups and hardening of RDMA code
> - Cleanups and hardening of vmstate code
> - Fix for vhost-user postcopy hang
> - Fix for CVE-2026-6426

This breaks s390x:

https://gitlab.com/qemu-project/qemu/-/jobs/16126649576

Summary of Failures:
   98/1142 qtest+qtest-aarch64+slow - qemu:qtest-aarch64/migration-test  
                ERROR 3.39s   killed by signal 6 SIGABRT
   99/1142 qtest+qtest-i386+slow - qemu:qtest-i386/migration-test       
                ERROR            4.13s   killed by signal 6 SIGABRT
  100/1142 qtest+qtest-loongarch64+slow - 
qemu:qtest-loongarch64/migration-test         ERROR 4.19s   killed by 
signal 6 SIGABRT
  101/1142 qtest+qtest-ppc64+slow - qemu:qtest-ppc64/migration-test      
                ERROR   4.17s   killed by signal 6 SIGABRT
  102/1142 qtest+qtest-s390x+slow - qemu:qtest-s390x/migration-test      
                ERROR   4.13s   killed by signal 6 SIGABRT
  104/1142 qtest+qtest-x86_64+slow - qemu:qtest-x86_64/migration-test    
                ERROR   4.14s   killed by signal 6 SIGABRT
  155/1142 qtest+qtest-i386+slow - qemu:qtest-i386/ahci-test             
         ERROR           23.79s   killed by signal 6 SIGABRT
  156/1142 qtest+qtest-x86_64+slow - qemu:qtest-x86_64/ahci-test         
             ERROR           23.99s   killed by signal 6 SIGABRT
  172/1142 qtest+qtest-aarch64+slow - qemu:qtest-aarch64/qos-test       
                TIMEOUT        120.06s   killed by signal 15 SIGTERM
  183/1142 qtest+qtest-i386+slow - qemu:qtest-i386/qos-test             
          TIMEOUT        120.06s   killed by signal 15 SIGTERM
  189/1142 qtest+qtest-loongarch64+slow - 
qemu:qtest-loongarch64/qos-test               TIMEOUT 120.05s   killed 
by signal 15 SIGTERM
  194/1142 qtest+qtest-riscv32+slow - qemu:qtest-riscv32/qos-test       
                ERROR           70.71s   killed by signal 6 SIGABRT
  197/1142 qtest+qtest-riscv64+slow - qemu:qtest-riscv64/qos-test       
                ERROR           72.57s   killed by signal 6 SIGABRT
  201/1142 qtest+qtest-ppc64+slow - qemu:qtest-ppc64/qos-test           
            TIMEOUT        120.17s   killed by signal 15 SIGTERM
  221/1142 func-quick+func-aarch64 - qemu:func-aarch64-migration         
             FAIL             2.18s   exit status 1
  233/1142 func-quick+func-arm - qemu:func-arm-migration                 
     FAIL             1.82s   exit status 1
  237/1142 func-quick+func-alpha - qemu:func-alpha-migration             
         FAIL            58.51s   exit status 1
  274/1142 qtest+qtest-x86_64+slow - qemu:qtest-x86_64/qos-test         
              TIMEOUT        120.48s   killed by signal 15 SIGTERM
  260/1142 func-quick+func-i386 - qemu:func-i386-migration               
       FAIL            46.18s   exit status 1
  317/1142 func-quick+func-ppc - qemu:func-ppc-migration                 
     FAIL             4.57s   exit status 1
  331/1142 func-quick+func-ppc64 - qemu:func-ppc64-migration             
         FAIL            46.56s   exit status 1
  337/1142 func-quick+func-riscv32 - qemu:func-riscv32-migration         
             FAIL            46.32s   exit status 1
  341/1142 func-quick+func-riscv64 - qemu:func-riscv64-migration         
             FAIL            39.93s   exit status 1
  384/1142 func-quick+func-sparc - qemu:func-sparc-migration             
         FAIL            41.98s   exit status 1
  391/1142 func-quick+func-sparc64 - qemu:func-sparc64-migration         
             FAIL            44.46s   exit status 1
  401/1142 func-quick+func-x86_64 - qemu:func-x86_64-migration           
           FAIL            50.76s   exit status 1

r~