[PATCH v2 0/5] migration-test: Plumbing

Fabiano Rosas posted 5 patches 3 weeks, 5 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260311213418.16951-1-farosas@suse.de
Maintainers: "Daniel P. Berrangé" <berrange@redhat.com>, Peter Xu <peterx@redhat.com>, Fabiano Rosas <farosas@suse.de>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, Laurent Vivier <lvivier@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Mark Kanda <mark.kanda@oracle.com>, Ben Chaney <bchaney@akamai.com>
io/channel-tls.c                       |  4 +++-
migration/migration.c                  |  5 +++++
migration/multifd.c                    | 27 ++++++++++++--------------
tests/qtest/dbus-vmstate-test.c        |  5 +++--
tests/qtest/migration/cpr-tests.c      |  5 +++--
tests/qtest/migration/framework.c      |  7 +++----
tests/qtest/migration/framework.h      |  2 --
tests/qtest/migration/migration-qmp.c  |  6 ++++++
tests/qtest/migration/migration-util.c | 19 +++++++++++++-----
tests/qtest/migration/migration-util.h |  2 +-
tests/qtest/migration/misc-tests.c     |  4 ++--
tests/qtest/migration/precopy-tests.c  | 12 +++++-------
tests/qtest/migration/tls-tests.c      | 14 +++++++------
13 files changed, 65 insertions(+), 47 deletions(-)
[PATCH v2 0/5] migration-test: Plumbing
Posted by Fabiano Rosas 3 weeks, 5 days ago
Fix leaks. A couple of normal ones and a few that happen due to a test
expecting failure in the destination side, but 'exit-on-error' is set
so the coroutine just exits the entire process while a few resources
are still allocated, but outside of the scope of the migration code.

For v2 I set exit-on-error unconditionally in migration-test. The QEMU
process should never return 1 anymore.

I also removed the cleanup patches because they are no longer strictly
necessary, I'll add them for the next release cyle to keep the changes
during the freeze restricted to what is necessary to fix the bugs.

CI run: https://gitlab.com/farosas/qemu/-/pipelines/2379240537
--enable-asan --enable-ubsan build is clean for x86_64 migration-test --full

v1:
cover: https://lore.kernel.org/r/20260310142134.15137-1-farosas@suse.de
series: https://lore.kernel.org/r/20260310135540.8679-1-farosas@suse.de

Fabiano Rosas (5):
  tests/qtest/migration: Fix leak of migration tests data
  io: Fix TLS bye task leak
  tests/qtest/migration: Fix leak in CPR exec test
  migration/multifd: Fix leaks of TLS error objects
  tests/qtest/migration: Force exit-on-error=false

 io/channel-tls.c                       |  4 +++-
 migration/migration.c                  |  5 +++++
 migration/multifd.c                    | 27 ++++++++++++--------------
 tests/qtest/dbus-vmstate-test.c        |  5 +++--
 tests/qtest/migration/cpr-tests.c      |  5 +++--
 tests/qtest/migration/framework.c      |  7 +++----
 tests/qtest/migration/framework.h      |  2 --
 tests/qtest/migration/migration-qmp.c  |  6 ++++++
 tests/qtest/migration/migration-util.c | 19 +++++++++++++-----
 tests/qtest/migration/migration-util.h |  2 +-
 tests/qtest/migration/misc-tests.c     |  4 ++--
 tests/qtest/migration/precopy-tests.c  | 12 +++++-------
 tests/qtest/migration/tls-tests.c      | 14 +++++++------
 13 files changed, 65 insertions(+), 47 deletions(-)

-- 
2.51.0
Re: [PATCH v2 0/5] migration-test: Plumbing
Posted by Peter Maydell 3 weeks, 5 days ago
On Wed, 11 Mar 2026 at 21:34, Fabiano Rosas <farosas@suse.de> wrote:
>
> Fix leaks. A couple of normal ones and a few that happen due to a test
> expecting failure in the destination side, but 'exit-on-error' is set
> so the coroutine just exits the entire process while a few resources
> are still allocated, but outside of the scope of the migration code.
>
> For v2 I set exit-on-error unconditionally in migration-test. The QEMU
> process should never return 1 anymore.
>
> I also removed the cleanup patches because they are no longer strictly
> necessary, I'll add them for the next release cyle to keep the changes
> during the freeze restricted to what is necessary to fix the bugs.
>
> CI run: https://gitlab.com/farosas/qemu/-/pipelines/2379240537
> --enable-asan --enable-ubsan build is clean for x86_64 migration-test --full

Thanks for sending these out -- I can confirm that all the
migration-test fails I was seeing are now gone. I do still see
the func-sparc64-migration test fail, but that looks like it's
probably not the fault of migration itself: we hit a SPARC specific
assertion in QEMU rather than tripping an ASAN error.

thanks
-- PMM