From: Fabiano Rosas <farosas@suse.de>
To: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: qemu-devel@nongnu.org, "Peter Xu" <peterx@redhat.com>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Laurent Vivier" <lvivier@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>
Subject: Re: [PATCH 11/22] tests/qtest/migration: Move common test code
Date: Wed, 06 Nov 2024 09:26:24 -0300	[thread overview]
Message-ID: <87ttck1rbj.fsf@suse.de> (raw)
In-Reply-To: <ZytNb_nTrePsYabA@redhat.com>
Daniel P. Berrangé <berrange@redhat.com> writes:
> On Tue, Nov 05, 2024 at 03:08:26PM -0300, Fabiano Rosas wrote:
>> Put the common test code in a separate file. Leave only individual
>> test functions and their static helpers in migration-test.c.
>> 
>> This moves the shared:
>> 
>>  test_postcopy_common
>>  test_postcopy_recovery_common
>>  test_precopy_common
>>  test_file_common
>>  migrate_precopy_tcp_multifd_start_common
>>  migrate_start
>>  migrate_end
>>  migration_get_env
>>  migration_env_clean
>> 
>> and some of their static helpers to migrate-common.c.
>> 
>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>> ---
>>  tests/qtest/meson.build                  |    1 +
>>  tests/qtest/migration-test.c             | 1124 +---------------------
>>  tests/qtest/migration/bootfile.c         |    2 +-
>>  tests/qtest/migration/bootfile.h         |    2 +-
>>  tests/qtest/migration/migration-common.c |  963 ++++++++++++++++++
>>  tests/qtest/migration/migration-common.h |  214 ++++
>>  tests/qtest/migration/migration-util.h   |   13 -
>
> Looking at these I guess I'd ask the question of what is the rule for
> deciding whether to put something in -common vs in -util ?
>
> Both names sounds like being a general "bag of bits", so it isn't
> obvious to me what their distinct roles are.
>
The idea was to make -util the general bag of bits just like
migration-helpers is currently.
-common should be the more "important" migration-specific functions,
code that we spend more time reading and that are actually responsible
for the results of the tests. Consider:
static void test_multifd_file_mapped_ram_fdset_dio(void)
{
    ...
    if (!probe_o_direct_support(tmpfs)) {          <--- just a helper
        g_test_skip("Filesystem does not support O_DIRECT");
        return;
    }
    test_file_common(&args, true);  <--- actually doing the heavy-lifting
}
We could to some renaming and restructuring, but I think the distinction
is important. We already have it today, what is -common is all stuffed
into migration-test.c and the rest is in migration-helpers.c.
>>  7 files changed, 1193 insertions(+), 1126 deletions(-)
>>  create mode 100644 tests/qtest/migration/migration-common.c
>>  create mode 100644 tests/qtest/migration/migration-common.h
>> 
>
> With regards,
> Daniel
next prev parent reply	other threads:[~2024-11-06 12:27 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-05 18:08 [PATCH 00/22] tests/qtest: migration-test refactoring Fabiano Rosas
2024-11-05 18:08 ` [PATCH 01/22] tests/qtest/migration: Fix indentations Fabiano Rosas
2024-11-06  9:24   ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 02/22] tests/qtest/migration: Standardize hook names Fabiano Rosas
2024-11-05 18:08 ` [PATCH 03/22] tests/qtest/migration: Stop calling everything "test" Fabiano Rosas
2024-11-06  9:29   ` Daniel P. Berrangé
2024-11-06 12:12     ` Fabiano Rosas
2024-11-05 18:08 ` [PATCH 04/22] tests/migration: Disambiguate guestperf vs. a-b Fabiano Rosas
2024-11-06  9:24   ` Daniel P. Berrangé
2024-11-06 12:11     ` Fabiano Rosas
2024-11-05 18:08 ` [PATCH 05/22] tests/qtest/migration: Move bootfile code to its own file Fabiano Rosas
2024-11-06 10:48   ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 06/22] tests/qtest/migration: Move qmp helpers to a separate file Fabiano Rosas
2024-11-06 10:52   ` Daniel P. Berrangé
2024-11-06 12:13     ` Fabiano Rosas
2024-11-05 18:08 ` [PATCH 07/22] tests/qtest/migration: Rename migration-helpers.c Fabiano Rosas
2024-11-05 18:08 ` [PATCH 08/22] tests/qtest/migration: Move ufd_version_check to utils Fabiano Rosas
2024-11-06 11:00   ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 09/22] tests/qtest/migration: Move kvm_dirty_ring_supported " Fabiano Rosas
2024-11-05 18:08 ` [PATCH 10/22] tests/qtest/migration: Isolate test initialization Fabiano Rosas
2024-11-06 11:02   ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 11/22] tests/qtest/migration: Move common test code Fabiano Rosas
2024-11-06 11:05   ` Daniel P. Berrangé
2024-11-06 12:26     ` Fabiano Rosas [this message]
2024-11-06 12:33       ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 12/22] tests/qtest/migration: Split TLS tests from migration-test.c Fabiano Rosas
2024-11-06 11:15   ` Daniel P. Berrangé
2024-11-06 13:05     ` Fabiano Rosas
2024-11-06 13:13       ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 13/22] tests/qtest/migration: Split compression " Fabiano Rosas
2024-11-05 18:08 ` [PATCH 14/22] tests/qtest/migration: Split postcopy tests Fabiano Rosas
2024-11-05 18:08 ` [PATCH 15/22] tests/qtest/migration: Split file tests Fabiano Rosas
2024-11-05 18:08 ` [PATCH 16/22] tests/qtest/migration: Split precopy tests Fabiano Rosas
2024-11-05 18:08 ` [PATCH 17/22] tests/qtest/migration: Split CPR tests Fabiano Rosas
2024-11-05 18:08 ` [PATCH 18/22] tests/qtest/migration: Split validation tests + misc Fabiano Rosas
2024-11-05 18:08 ` [PATCH 19/22] tests/qtest/migration: Add migration-test-smoke Fabiano Rosas
2024-11-05 18:08 ` [PATCH 20/22] tests/qtest/migration: Pick smoke tests Fabiano Rosas
2024-11-05 18:08 ` [PATCH 21/22] tests/qtest: Add support for check-qtest-<subsystem> Fabiano Rosas
2024-11-06 11:11   ` Daniel P. Berrangé
2024-11-06 12:40     ` Fabiano Rosas
2024-11-06 12:42       ` Daniel P. Berrangé
2024-11-05 18:08 ` [PATCH 22/22] docs: Add migration tests documentation Fabiano Rosas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox
  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):
  git send-email \
    --in-reply-to=87ttck1rbj.fsf@suse.de \
    --to=farosas@suse.de \
    --cc=alex.bennee@linaro.org \
    --cc=berrange@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY
  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
  Be sure your reply has a Subject: header at the top and a blank line
  before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).