qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 07/11] tests/qtest/migration-test: Build command line usin


From: Richard Henderson
Subject: Re: [PATCH v2 07/11] tests/qtest/migration-test: Build command line using GString API (1/4)
Date: Thu, 19 Jan 2023 11:10:45 -1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2

On 1/19/23 04:58, Philippe Mathieu-Daudé wrote:
Part 1/4: Convert memory & machine options.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
  tests/qtest/migration-test.c | 22 ++++++++++++----------
  1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
index 6c3db95113..7aa323a7a7 100644
--- a/tests/qtest/migration-test.c
+++ b/tests/qtest/migration-test.c
@@ -582,6 +582,7 @@ typedef struct {
  static int test_migrate_start(QTestState **from, QTestState **to,
                                const char *uri, MigrateStart *args)
  {
+    g_autoptr(GString) cmd_common = NULL;
      g_autofree gchar *arch_source = NULL;
      g_autofree gchar *arch_target = NULL;
      g_autofree gchar *cmd_target = NULL;
@@ -601,6 +602,9 @@ static int test_migrate_start(QTestState **from, QTestState 
**to,
      }
got_stop = false;
+
+    cmd_common = g_string_new("");
+
      bootpath = g_strdup_printf("%s/bootsect", tmpfs);
      if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
          /* the assembled x86 boot sector should be exactly one sector large */
@@ -644,6 +648,10 @@ static int test_migrate_start(QTestState **from, 
QTestState **to,
      } else {
          g_assert_not_reached();
      }
+    if (machine_opts) {
+        g_string_append_printf(cmd_common, " -machine %s ", machine_opts);
+    }
+    g_string_append_printf(cmd_common, "-m %s ", memory_size);
if (!getenv("QTEST_LOG") && args->hide_stderr) {
  #ifdef _WIN32
@@ -674,33 +682,27 @@ static int test_migrate_start(QTestState **from, 
QTestState **to,
      if (!args->only_target) {
          g_autofree gchar *cmd_source = NULL;
- cmd_source = g_strdup_printf("-accel kvm%s -accel tcg%s%s "
+        cmd_source = g_strdup_printf("-accel kvm%s -accel tcg%s "
                                       "-name source,debug-threads=on "
-                                     "-m %s "
                                       "-serial file:%s/src_serial "
                                       "%s %s %s %s",
                                       args->use_dirty_ring ?
                                       ",dirty-ring-size=4096" : "",
-                                     machine_opts ? " -machine " : "",
-                                     machine_opts ? machine_opts : "",

You removed two strings here, but only one %s above.


r~

-                                     memory_size, tmpfs,
+                                     cmd_common->str, tmpfs,
                                       arch_source, shmem_opts,
                                       args->opts_source ? args->opts_source : 
"",
                                       ignore_stderr);
          *from = qtest_init(cmd_source);
      }
- cmd_target = g_strdup_printf("-accel kvm%s -accel tcg%s%s "
+    cmd_target = g_strdup_printf("-accel kvm%s -accel tcg%s "
                                   "-name target,debug-threads=on "
-                                 "-m %s "
                                   "-serial file:%s/dest_serial "
                                   "-incoming %s "
                                   "%s %s %s %s",
                                   args->use_dirty_ring ?
                                   ",dirty-ring-size=4096" : "",
-                                 machine_opts ? " -machine " : "",
-                                 machine_opts ? machine_opts : "",
-                                 memory_size, tmpfs, uri,
+                                 cmd_common->str, tmpfs, uri,
                                   arch_target, shmem_opts,
                                   args->opts_target ? args->opts_target : "",
                                   ignore_stderr);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]