From nobody Thu Dec 18 08:07:34 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1576670998; cv=none; d=zohomail.com; s=zohoarc; b=jDrnaOwwHgLL4aq2LGtlFHbmjhUMBSocrJqzv/M2iHm0OFvJrEqjF7rTiNKEAFYBuVUKwloE2gJWeTrcpaObzEJPgKqb5CFoIQdcQ+EA/oqLTMyp34lFvfk1UgVNbJlwx/X74rWnvstC7YfvYTxGwiKOOyYE/kWkgk5NdritE+s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576670998; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=aH3EykeL08EUheSeMlIhlQO84iNBgJfxB8x8n+2PQ/0=; b=P+LkO2pMml61yEy5g3UAbKZezFozRFPIfDunzAUh1GXK7TAAgCjDOkQKGTNKhRH6u1C4tmtfRXJkkEnk0u1VrplEY4cyRA5p5lyJZdUt/hpF30VIYKUoTLH5Jw00vHm+vW5E3SwNZ8BTU7EuyKvQ3cg198E0kqsIqSOoz1HqUnQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576670998610737.6034946930033; Wed, 18 Dec 2019 04:09:58 -0800 (PST) Received: from localhost ([::1]:53230 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ihY9N-0006l6-0n for importer@patchew.org; Wed, 18 Dec 2019 07:09:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:45090) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ihY2j-00060W-1k for qemu-devel@nongnu.org; Wed, 18 Dec 2019 07:03:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ihY2h-00084M-F0 for qemu-devel@nongnu.org; Wed, 18 Dec 2019 07:03:04 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]:33695) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ihY2h-0007z5-3n for qemu-devel@nongnu.org; Wed, 18 Dec 2019 07:03:03 -0500 Received: by mail-wm1-x334.google.com with SMTP id d139so4489865wmd.0 for ; Wed, 18 Dec 2019 04:03:03 -0800 (PST) Received: from 640k.lan ([93.56.166.5]) by smtp.gmail.com with ESMTPSA id n67sm2236838wmf.46.2019.12.18.04.03.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 18 Dec 2019 04:03:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=aH3EykeL08EUheSeMlIhlQO84iNBgJfxB8x8n+2PQ/0=; b=ioOoB3NxuLOzcJHDbLNGZi7sZQbdaAsNahg0lKjnjxVQrJR1P6gNHUjdzEZrEA19Us h3+i6dJPf/NmzlyidLCVfVieZWHIlaiaqKLeRO80Xs61yEm6T/Sp/51u9kDIjA6Jfb9i Pf5nn0K54gRPh6+rtHXdNYVLvI0sp2EhE+G3UHUSAw+sp5gQKmuCo4p3c/5EsiJbflvq KzLPCXGdl+4uu4+ZB0tMetw5ZJvGay4TMBE1EZ5xmtWQHgVU6i3eI6RbZWkRz9i0aeQJ G11KGMkZjbX9ClmWCKm0+XBXM3YHGVP6+WcR7+lgL+lemFjV9U7FWtqODRXe2OVVHs2b 1gyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=aH3EykeL08EUheSeMlIhlQO84iNBgJfxB8x8n+2PQ/0=; b=c1rt37KHm7mqFt93gQhnPBF8xdkEo5Igbs+16AGmBejiQd6I3sgkMZoDpYWxv1abMt vLV7mYL6B4mBlq7G5P8NBJCT0y9+qDEhHLSCInGF6Sl3zXbZn5bnrxPYoB8jPT3VE0ej XYO6+8+sDjzbIbi7ySxji9Qo0D3pLTz1DJ+XaE4vA0guBWOX2tnbayqU1rfcyt8mLvH8 yxNi7GcX5AU9o9ZahIRPVACcNz7kKlzDVSlsoO9vTmTPmgb2dCD09V8zw+pE420PEXr2 2Rx6ZD6dSo8weznM/Wk34g9vtLPWGi4IAvTOE7YZ/wEm21n+QykdGwbw6X97kgqxCnJU ZgfQ== X-Gm-Message-State: APjAAAWEQmyaDzAPk/1PpaDPC5qGglJ3oVtfMBWGsTyNQis7e00zyl0G Hs+BQtE561Z1uEshET+GzsdVQ3Mz X-Google-Smtp-Source: APXvYqwEKgd7hr2a9uFcGVItVQLxGG1RROYeMjajswDvI70fq0Fqcr++314xfGXrUlpaCuOLaUEs3Q== X-Received: by 2002:a7b:c759:: with SMTP id w25mr2955083wmk.15.1576670581640; Wed, 18 Dec 2019 04:03:01 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 06/87] migration-test: Move shmem handling to common commandline Date: Wed, 18 Dec 2019 13:01:32 +0100 Message-Id: <1576670573-48048-7-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1576670573-48048-1-git-send-email-pbonzini@redhat.com> References: <1576670573-48048-1-git-send-email-pbonzini@redhat.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::334 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Juan Quintela Signed-off-by: Juan Quintela Tested-by: Cornelia Huck #s390x Tested-by: Laurent Vivier --- tests/migration-test.c | 76 ++++++++++++++++++++++------------------------= ---- 1 file changed, 34 insertions(+), 42 deletions(-) diff --git a/tests/migration-test.c b/tests/migration-test.c index 9d40f2d..e17d432 100644 --- a/tests/migration-test.c +++ b/tests/migration-test.c @@ -380,13 +380,6 @@ static void cleanup(const char *filename) g_free(path); } =20 -static char *get_shmem_opts(const char *mem_size, const char *shmem_path) -{ - return g_strdup_printf("-object memory-backend-file,id=3Dmem0,size=3D%= s" - ",mem-path=3D%s,share=3Don -numa node,memdev=3D= mem0", - mem_size, shmem_path); -} - static char *SocketAddress_to_str(SocketAddress *addr) { switch (addr->type) { @@ -560,8 +553,8 @@ static int test_migrate_start(QTestState **from, QTestS= tate **to, gchar *cmd_source, *cmd_target; const gchar *ignore_stderr; char *bootpath =3D NULL; - char *extra_opts =3D NULL; - char *shmem_path =3D NULL; + char *shmem_opts; + char *shmem_path; const char *arch =3D qtest_get_arch(); const char *machine_type; const char *machine_args; @@ -575,7 +568,6 @@ static int test_migrate_start(QTestState **from, QTestS= tate **to, g_test_skip("/dev/shm is not supported"); return -1; } - shmem_path =3D g_strdup_printf("/dev/shm/qemu-%d", getpid()); } =20 got_stop =3D false; @@ -587,18 +579,15 @@ static int test_migrate_start(QTestState **from, QTes= tState **to, machine_type =3D ""; machine_args =3D ""; memory_size =3D "150M"; - extra_opts =3D use_shmem ? get_shmem_opts(memory_size, shmem_path)= : NULL; cmd_src =3D g_strdup_printf(" -name source,debug-threads=3Don" " -serial file:%s/src_serial" - " -drive file=3D%s,format=3Draw %s", - tmpfs, bootpath, - extra_opts ? extra_opts : ""); + " -drive file=3D%s,format=3Draw", + tmpfs, bootpath); cmd_dst =3D g_strdup_printf(" -name target,debug-threads=3Don" " -serial file:%s/dest_serial" " -drive file=3D%s,format=3Draw" - " -incoming %s %s", - tmpfs, bootpath, uri, - extra_opts ? extra_opts : ""); + " -incoming %s", + tmpfs, bootpath, uri); start_address =3D X86_TEST_MEM_START; end_address =3D X86_TEST_MEM_END; } else if (g_str_equal(arch, "s390x")) { @@ -606,36 +595,31 @@ static int test_migrate_start(QTestState **from, QTes= tState **to, machine_type =3D ""; machine_args =3D ""; memory_size =3D "128M"; - extra_opts =3D use_shmem ? get_shmem_opts(memory_size, shmem_path)= : NULL; cmd_src =3D g_strdup_printf(" -name source,debug-threads=3Don" - " -serial file:%s/src_serial -bios %s %s= ", - tmpfs, bootpath, - extra_opts ? extra_opts : ""); + " -serial file:%s/src_serial -bios %s", + tmpfs, bootpath); cmd_dst =3D g_strdup_printf(" -name target,debug-threads=3Don" " -serial file:%s/dest_serial -bios %s" - " -incoming %s %s", - tmpfs, bootpath, uri, - extra_opts ? extra_opts : ""); + " -incoming %s", + tmpfs, bootpath, uri); start_address =3D S390_TEST_MEM_START; end_address =3D S390_TEST_MEM_END; } else if (strcmp(arch, "ppc64") =3D=3D 0) { machine_type =3D ""; machine_args =3D ",vsmt=3D8"; memory_size =3D "256M"; - extra_opts =3D use_shmem ? get_shmem_opts(memory_size, shmem_path)= : NULL; cmd_src =3D g_strdup_printf("-nodefaults" " -name source,debug-threads=3Don" " -serial file:%s/src_serial" " -prom-env 'use-nvramrc?=3Dtrue' -prom-= env " "'nvramrc=3Dhex .\" _\" begin %x %x " "do i c@ 1 + i c! 1000 +loop .\" B\" 0 " - "until' %s", tmpfs, end_address, - start_address, extra_opts ? extra_opts := ""); + "until'", tmpfs, end_address, + start_address); cmd_dst =3D g_strdup_printf(" -name target,debug-threads=3Don" " -serial file:%s/dest_serial" - " -incoming %s %s", - tmpfs, uri, - extra_opts ? extra_opts : ""); + " -incoming %s", + tmpfs, uri); =20 start_address =3D PPC_TEST_MEM_START; end_address =3D PPC_TEST_MEM_END; @@ -644,18 +628,15 @@ static int test_migrate_start(QTestState **from, QTes= tState **to, machine_type =3D "virt,"; machine_args =3D "gic-version=3Dmax"; memory_size =3D "150M"; - extra_opts =3D use_shmem ? get_shmem_opts(memory_size, shmem_path)= : NULL; cmd_src =3D g_strdup_printf("-name vmsource,debug-threads=3Don -cp= u max " "-serial file:%s/src_serial " - "-kernel %s %s", - tmpfs, bootpath, - extra_opts ? extra_opts : ""); + "-kernel %s", + tmpfs, bootpath); cmd_dst =3D g_strdup_printf("-name vmdest,debug-threads=3Don -cpu = max " "-serial file:%s/dest_serial " "-kernel %s " - "-incoming %s %s", - tmpfs, bootpath, uri, - extra_opts ? extra_opts : ""); + "-incoming %s", + tmpfs, bootpath, uri); =20 start_address =3D ARM_TEST_MEM_START; end_address =3D ARM_TEST_MEM_END; @@ -666,7 +647,6 @@ static int test_migrate_start(QTestState **from, QTestS= tate **to, } =20 g_free(bootpath); - g_free(extra_opts); =20 if (hide_stderr) { ignore_stderr =3D "2>/dev/null"; @@ -674,26 +654,38 @@ static int test_migrate_start(QTestState **from, QTes= tState **to, ignore_stderr =3D ""; } =20 + if (use_shmem) { + shmem_path =3D g_strdup_printf("/dev/shm/qemu-%d", getpid()); + shmem_opts =3D g_strdup_printf( + "-object memory-backend-file,id=3Dmem0,size=3D%s" + ",mem-path=3D%s,share=3Don -numa node,memdev=3Dmem0", + memory_size, shmem_path); + } else { + shmem_path =3D NULL; + shmem_opts =3D g_strdup(""); + } + cmd_source =3D g_strdup_printf("-machine %saccel=3Dkvm:tcg%s " "-m %s " - "%s %s %s", + "%s %s %s %s", machine_type, machine_args, memory_size, - cmd_src, opts_src, ignore_stderr); + cmd_src, shmem_opts, opts_src, ignore_std= err); g_free(cmd_src); *from =3D qtest_init(cmd_source); g_free(cmd_source); =20 cmd_target =3D g_strdup_printf("-machine %saccel=3Dkvm:tcg%s " "-m %s " - "%s %s %s", + "%s %s %s %s", machine_type, machine_args, memory_size, - cmd_dst, opts_dst, ignore_stderr); + cmd_dst, shmem_opts, opts_dst, ignore_std= err); g_free(cmd_dst); *to =3D qtest_init(cmd_target); g_free(cmd_target); =20 + g_free(shmem_opts); /* * Remove shmem file immediately to avoid memory leak in test failed c= ase. * It's valid becase QEMU has already opened this file --=20 1.8.3.1