From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291236; cv=none; d=zohomail.com; s=zohoarc; b=PMgVB66/sj4KWdaAibeWkiYmWQvDeWU+pi21kgZG+eHvECtdaglNA9FdSLsvFxbwxjU2r3Z6TEXSYLOBJ75guacmmjsuwhIZujjukMtmp+db5hs0Oqzuq5VfkaDmsDkxJSeZo7rqADXbpDIl/8sjkvBe0bt39B/ceZFruUni7Qg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291236; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=FK4BXkRVbSn2QYxeqnwzP2tz/KaIxCTbszEjhBZbEs8=; b=XJ3T5Y7xAKlW9gucPCASugb0DTfPZBOm0wJUyg+wvK5o3587EE+Rx+UC9zGGliKcbaRg2BSq6KIt6nzSc5+XMeTIKqSLnThcW+cBq/OwHZ4u4vOHR95rX4hcLwlqVsKDBu+FFh3m0y0bf0oUsvrpYuLry+UOQHXOocMZiRqInWo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291236351609.5098266809872; Fri, 19 Sep 2025 07:13:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrN-0000bq-0p; Fri, 19 Sep 2025 10:13:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbr2-0000Ta-K3 for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:55 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqt-0007Qa-UH for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:51 -0400 Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtw6l017757; Fri, 19 Sep 2025 14:12:37 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx9wpqg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:37 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JD6QkP035161; Fri, 19 Sep 2025 14:12:36 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu93k-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:35 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYX3003357; Fri, 19 Sep 2025 14:12:35 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-2; Fri, 19 Sep 2025 14:12:35 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=FK4BXkRVbSn2QYxeqnwzP2tz/KaIxCTbszEjhBZbEs8=; b= A4/cMQFF6TWHVE/D7NP3lvTZd9hn1przoBz//ZadEJrr0204PNgZNCvdpyeQiDkb zcKh4wOvvs5ilwn50pAuGY7hzQF568vRzTwLfyCUTOZi52tX5giTso/EWIeBe6S5 D5tfA4XvLPXrUA7JXdQSkSEIg7Aa3bDCedcIfE2ZRhtZaxAcvh05Re6MvW2Fo6ak MY2mv28rW0S+08uOIFvcYynvxqc0nA95X7u0T20S1E3TTfdunReE4RLeMlDJ9C5L g5zoCimmw5U+UesJEUmw+/lfhhiZlkVzO9NF20uUd9br5DpV3aqZqJactNCuKIOZ RDwFzoUgez193y2PbmZomQ== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 01/11] tests/qtest: export qtest_qemu_binary Date: Fri, 19 Sep 2025 07:12:23 -0700 Message-Id: <1758291153-349744-2-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-ORIG-GUID: vqXtNoQL_6QTfCbjgDk8QCAvC9A7n55Z X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfXwyo4oxIKTXuz BFnQNhGjjuTzrHUfiCrQGsSKNo4Tu+oNlig0rNieLpYmFDuDR86WSXv2Trr5u+dAwHwRT/XX8/F 8nNbXK27jrPQNZhnEUTX7wOhy7jDg4IFxwApJHPVFDL4xDtxtmY+ssgucKY9HasZfkzRT/x+Y9o xDbq/JZ5/Z1qoMlFeK23R4r2MsNkEmQXxTgE0wWBOgbX0xtjmsj+akfvw9681/Hr5O4MxuMbk76 w1nlfceTJLnPXAq3dxRT5LG55pgiK4eKxHnnwHqpMht3d0HvcoPhvfMveSPOzuiK34qByyAuVbv QBmfFLKiM92YSl+A8Ho8EmXlRgFO/RwJk2HqKij6x989kO0jqKkmsVzh//9StCXvlqKEwPpbS2x 1rPnq5O6OsyDULi4hhSkNNkNGetbiw== X-Proofpoint-GUID: vqXtNoQL_6QTfCbjgDk8QCAvC9A7n55Z X-Authority-Analysis: v=2.4 cv=C7vpyRP+ c=1 sm=1 tr=0 ts=68cd64d5 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=8YXl1s7RIgG2VgC1okUA:9 cc=ntf awl=host:13614 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291237868116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Steve Sistare --- tests/qtest/libqtest.h | 9 +++++++++ tests/qtest/libqtest.c | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/qtest/libqtest.h b/tests/qtest/libqtest.h index b3f2e7f..6d3199f 100644 --- a/tests/qtest/libqtest.h +++ b/tests/qtest/libqtest.h @@ -48,6 +48,15 @@ QTestState *qtest_initf(const char *fmt, ...) G_GNUC_PRI= NTF(1, 2); QTestState *qtest_vinitf(const char *fmt, va_list ap) G_GNUC_PRINTF(1, 0); =20 /** + * qtest_qemu_binary: + * @var: environment variable name + * + * Look up @var and return its value as the qemu binary path. + * If @var is NULL, look up the default var name. + */ +const char *qtest_qemu_binary(const char *var); + +/** * qtest_init: * @extra_args: other arguments to pass to QEMU. CAUTION: these * arguments are subject to word splitting and shell evaluation. diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index f3d4e08..6f76be1 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -357,7 +357,7 @@ void qtest_remove_abrt_handler(void *data) } } =20 -static const char *qtest_qemu_binary(const char *var) +const char *qtest_qemu_binary(const char *var) { const char *qemu_bin; =20 --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291338; cv=none; d=zohomail.com; s=zohoarc; b=dwERPmi7WipiZiBQjpiCPj1k7dB1VlNGYE60lHRkdHcVarJoXUQ11/4YuoS3ujsKw7P5ucPHWuc1ojpQ97SXaPy0dk51+3Zk1nr6GLan7Ru6oZPkBbfyNfFCB5vHm0k0A0CdbMDhSfW6pk7H5dtm2pSPPPQtuLEkIByYkZqtVn4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291338; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=GL/Biwmikn91u/cWgQBHpPF2r4hLVJPqA2yPO9IpWZI=; b=bEcDxp8uohyMV5of3tvoKyqLFEm5QHriZ6zGavOCP6qi2+jJA1MKQ19/Ar3uxiNicn2JU9wNaT1C1rjWQPZPOQ+Vu3XKXPyseJLAIkk6RF5cF/i7pjHZz3IUOuVtHkxItJJoZGqrtEKyiSMsBc8shrTR58FYIjVoUWZTgZ3Qz1A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291338499182.50717011866539; Fri, 19 Sep 2025 07:15:38 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrf-0001Ap-C7; Fri, 19 Sep 2025 10:13:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqy-0000RA-Lu for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:51 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqs-0007Si-9U for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:48 -0400 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtpdt008956; Fri, 19 Sep 2025 14:12:39 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fxb5mm5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:38 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JCP30p035162; Fri, 19 Sep 2025 14:12:37 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu944-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:37 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYX5003357; Fri, 19 Sep 2025 14:12:37 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-3; Fri, 19 Sep 2025 14:12:36 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=GL/Biwmikn91u/cWgQBHpPF2r4hLVJPqA2yPO9IpWZI=; b= YM5puSwVQOPtUXXD73Uoitock+INtN+NeXFMdNiI/9HJ4Glu6KXjwk2xh623oui0 Fk0yrpqI9eRJ7iylwwd5iVichSEv1aDN+uueirQObL7kiED+bc6GodMsz/KzCTr/ IhWMssXQ/MeoBJFyu08LKkl1VwcalUxvTrU54CxZ0YBiRkl2hZoGqh6dcTvZyLZw 3HicqMcP1lZXk0Lylli6749J+P1dgednAZyxq2s+xivU7CWcw67cJGTx/Dr8VVUe MRM7iBCwR/6q1jUHpkEakHn3ozJmi3T5hiTOWDiOnYEpTC2LVkrT+eYeT4MYR1e9 MLAY3+6qadK3frTV8hvCEw== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 02/11] tests/qtest: qtest_qemu_args Date: Fri, 19 Sep 2025 07:12:24 -0700 Message-Id: <1758291153-349744-3-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX3lbi6cPUaZNm iVL9o2TKVCtr4MvF5nJ4IOoctHDCUiyxRF5EEzPZtA96bvnNjBiHM4IE9MWxtDs6+2/c0zC2Ea3 WFH7t8J+IsjnXiu92EpW32CXVDvcWe9DIt8oauz2sMM9Y3w2qvBUtlNSwpvwHeSvvArt63ynFA4 /Lkkfgkb8sDHntZaknGQEBUj+GGNdArQqHx0Zv/xVSYbE9YMd4GhPiLvRX3DnIewB6yZRUKs82C l0FwMi7eVCJ1UezBcNIn7LmytQgcaw9LihDfI/MuwRWWA/WG67+FIJWEj7130bd+4QTlE3Ka4Dn RD0hLKDnyRpq2m/+aeH+4MjETvNe3j6OjhE2yx8WHCOo6+Mrtpo9paac2nQ2wEQIhoWyu5oCN6d vEe1xw+bxWk/+ptNU1KTeHXpSImhUg== X-Authority-Analysis: v=2.4 cv=KOJaDEFo c=1 sm=1 tr=0 ts=68cd64d7 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=8wfYa_FxhlLIVDfICZMA:9 cc=ntf awl=host:13614 X-Proofpoint-GUID: GllWtyyXu0yGDsdAjFXoPwv-vH2qgCAv X-Proofpoint-ORIG-GUID: GllWtyyXu0yGDsdAjFXoPwv-vH2qgCAv 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291339416116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Define an accessor that returns all the arguments used to exec QEMU. Collect the arguments that were passed to qtest_spawn_qemu, plus the trace arguments that were composed inside qtest_spawn_qemu, and move them to a new function qtest_qemu_args. This will be needed to test the cpr-exec migration mode. Signed-off-by: Steve Sistare --- tests/qtest/libqtest.h | 8 ++++++++ tests/qtest/libqtest.c | 54 +++++++++++++++++++++++++++++-----------------= ---- 2 files changed, 39 insertions(+), 23 deletions(-) diff --git a/tests/qtest/libqtest.h b/tests/qtest/libqtest.h index 6d3199f..a164f58 100644 --- a/tests/qtest/libqtest.h +++ b/tests/qtest/libqtest.h @@ -57,6 +57,14 @@ QTestState *qtest_vinitf(const char *fmt, va_list ap) G_= GNUC_PRINTF(1, 0); const char *qtest_qemu_binary(const char *var); =20 /** + * qtest_qemu_args: + * @extra_args: Other arguments to pass to QEMU. + * + * Return the command line used to start QEMU, sans binary. + */ +gchar *qtest_qemu_args(const char *extra_args); + +/** * qtest_init: * @extra_args: other arguments to pass to QEMU. CAUTION: these * arguments are subject to word splitting and shell evaluation. diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index 6f76be1..551bc8c 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -409,20 +409,12 @@ static pid_t qtest_create_process(char *cmd) } #endif /* _WIN32 */ =20 -static QTestState *G_GNUC_PRINTF(2, 3) qtest_spawn_qemu(const char *qemu_b= in, - const char *fmt, .= ..) +static QTestState *qtest_spawn_qemu(const char *qemu_bin, const char *args) { - va_list ap; QTestState *s =3D g_new0(QTestState, 1); - const char *trace =3D g_getenv("QTEST_TRACE"); - g_autofree char *tracearg =3D trace ? - g_strdup_printf("-trace %s ", trace) : g_strdup(""); g_autoptr(GString) command =3D g_string_new(""); =20 - va_start(ap, fmt); - g_string_append_printf(command, CMD_EXEC "%s %s", qemu_bin, tracearg); - g_string_append_vprintf(command, fmt, ap); - va_end(ap); + g_string_printf(command, CMD_EXEC "%s %s", qemu_bin, args); =20 qtest_add_abrt_handler(kill_qemu_hook_func, s); =20 @@ -466,6 +458,33 @@ static char *qtest_socket_path(const char *suffix) return g_strdup_printf("%s/qtest-%d.%s", g_get_tmp_dir(), getpid(), su= ffix); } =20 +gchar *qtest_qemu_args(const char *extra_args) +{ + g_autofree gchar *socket_path =3D qtest_socket_path("sock"); + g_autofree gchar *qmp_socket_path =3D qtest_socket_path("qmp"); + const char *trace =3D g_getenv("QTEST_TRACE"); + g_autofree char *tracearg =3D trace ? g_strdup_printf("-trace %s ", tr= ace) : + g_strdup(""); + gchar *args =3D g_strdup_printf( + "%s" + "-qtest unix:%s " + "-qtest-log %s " + "-chardev socket,path=3D%s,id=3Dchar0 " + "-mon chardev=3Dchar0,mode=3Dcontrol " + "-display none " + "-audio none " + "%s" + " -accel qtest", + + tracearg, + socket_path, + getenv("QTEST_LOG") ? DEV_STDERR : DEV_NULL, + qmp_socket_path, + extra_args ?: ""); + + return args; +} + static QTestState *qtest_init_internal(const char *qemu_bin, const char *extra_args, bool do_connect) @@ -474,6 +493,7 @@ static QTestState *qtest_init_internal(const char *qemu= _bin, int sock, qmpsock, i; g_autofree gchar *socket_path =3D qtest_socket_path("sock"); g_autofree gchar *qmp_socket_path =3D qtest_socket_path("qmp"); + g_autofree gchar *args =3D qtest_qemu_args(extra_args); =20 /* * It's possible that if an earlier test run crashed it might @@ -488,19 +508,7 @@ static QTestState *qtest_init_internal(const char *qem= u_bin, sock =3D init_socket(socket_path); qmpsock =3D init_socket(qmp_socket_path); =20 - s =3D qtest_spawn_qemu(qemu_bin, - "-qtest unix:%s " - "-qtest-log %s " - "-chardev socket,path=3D%s,id=3Dchar0 " - "-mon chardev=3Dchar0,mode=3Dcontrol " - "-display none " - "-audio none " - "%s" - " -accel qtest", - socket_path, - getenv("QTEST_LOG") ? DEV_STDERR : DEV_NULL, - qmp_socket_path, - extra_args ?: ""); + s =3D qtest_spawn_qemu(qemu_bin, args); =20 qtest_client_set_rx_handler(s, qtest_client_socket_recv_line); qtest_client_set_tx_handler(s, qtest_client_socket_send); --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291326; cv=none; d=zohomail.com; s=zohoarc; b=HF0sszFPTWbY/ZODn4FGVB5yASjzTqGlrkAftl7zvvtWvJ9OxvOQVeLuI5lgxEfzxkeDO04VocOFg5SeTMISPAnGp+MdDwcLZL7lnud7foeuSOTpeuvxNgp7GE3Yr13ThSJeKuCS2bSX1LVs/eIDiv7M69tD9awV0FPQviKqNWA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291326; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=IirLX65VcmUSLYw1Y2R4b+U1BUr3BFuwJGPwD/Bai6s=; b=ijRtIkRmYlCx1GcPG8zEBud73MVWuk1YR5UAtbuKjUy4hYv3Gp5jbXT3hnpL3GiemTQSZxHkgGn086QlyqhlDkkx9FnHkG5npCv5YsqIwaLDrjRrHPXv9KYrEEJLoE6GV1E4hKvTOT9DhRgoNThZWXN24m1O4YaBarMMqfeNmWU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291326931951.5292126104889; Fri, 19 Sep 2025 07:15:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrY-0000v8-Qt; Fri, 19 Sep 2025 10:13:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqy-0000R8-JW for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:51 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqs-0007Sn-Ui for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:45 -0400 Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDuOQG016253; Fri, 19 Sep 2025 14:12:40 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fxbwnhy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:39 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JCo4kN035235; Fri, 19 Sep 2025 14:12:38 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu94j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:38 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYX7003357; Fri, 19 Sep 2025 14:12:37 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-4; Fri, 19 Sep 2025 14:12:37 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=IirLX65VcmUSLYw1Y2R4b+U1BUr3BFuwJGPwD/Bai6s=; b= ENitvL3+t4OuGlozWoWYw5H0chpR3UCN9NBKMpEZGlm7zEKz7SkbOj7sqrTOIvfZ ifvw0yAB7n+N/Asz9sx2a2s8Y8mvhbh8Q7O5tLwC9NmoxBFxMt5sGffhQOflO4HC xRVLnerpT1FROc8ePe1DKw2zXMCtEhXiAQsfWKMU8jlibIOnTM9iNPZ0d3+wxUeI GW41u7HvLHb1LbXR+pBXujVyWNRFt50SLqjJqcHnXgyFKK3nXc8tlbchSF5VR58K 8vOFeldeePJU1UCj5xnrsXDnrvK1xrLYSy01S0DQaOqTMCo+senILvj5IZxHtE2+ VCQTXd2+iTYFwPDenSLYNQ== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 03/11] tests/qtest: qtest_create_test_state Date: Fri, 19 Sep 2025 07:12:25 -0700 Message-Id: <1758291153-349744-4-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX0CxsgDUL3TUL 7DXO8BVybofOvhtJgNr0ZzeOd/3x2jv88iYEAeUfEmMHFFkabEbbtOVF5BnzdJH1of0oTzy7bcI Ao+HGXSBFHbwHsPp5TK5jxxrYBTlREWM70RFXhGfthGi4QrZncymeV/gju4fIAxAsJa8qmndnHG kOsYWRU4Az+GdT+twk9qAeyedraKQL01sH+ePuy1Qu27tfoBCpIS09fwRe+/tPWPdh0iOnAXUoh g8M2xTQYWcfQsazIFaOrQPxhsGqaAkb86dF0LuL/aeGZZJHn78jy9X3EQDGNmwC0gigmhJUQMIY ueO0MEJYy45+d/ceYUaD1wpX9zJNU9WX7MAhOtFA18Sk1+4Z0LtCm1UGzxOie7t0dZ5nOdEHJGm AB0zMVqJBh7shQzXphwT69Tql5LuOQ== X-Authority-Analysis: v=2.4 cv=X5RSKHTe c=1 sm=1 tr=0 ts=68cd64d7 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=e7BPDN4iQOm0AXFvdZ8A:9 cc=ntf awl=host:13614 X-Proofpoint-GUID: NUiEIfFzdq5j01Q7ZrfJN4xWsDwgWL5V X-Proofpoint-ORIG-GUID: NUiEIfFzdq5j01Q7ZrfJN4xWsDwgWL5V 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291329298116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Refactor qtest_spawn_qemu and create a subroutine to create a QTestState object, to be used in a subsequent patch. Signed-off-by: Steve Sistare --- tests/qtest/libqtest.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index 551bc8c..3fa9317 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -409,22 +409,29 @@ static pid_t qtest_create_process(char *cmd) } #endif /* _WIN32 */ =20 -static QTestState *qtest_spawn_qemu(const char *qemu_bin, const char *args) +static QTestState *qtest_create_test_state(int pid) { QTestState *s =3D g_new0(QTestState, 1); + + s->qemu_pid =3D pid; + qtest_add_abrt_handler(kill_qemu_hook_func, s); + return s; +} + +static QTestState *qtest_spawn_qemu(const char *qemu_bin, const char *args) +{ + int pid; g_autoptr(GString) command =3D g_string_new(""); =20 g_string_printf(command, CMD_EXEC "%s %s", qemu_bin, args); =20 - qtest_add_abrt_handler(kill_qemu_hook_func, s); - if (!silence_spawn_log) { g_test_message("starting QEMU: %s", command->str); } =20 #ifndef _WIN32 - s->qemu_pid =3D fork(); - if (s->qemu_pid =3D=3D 0) { + pid =3D fork(); + if (pid =3D=3D 0) { #ifdef __linux__ /* * Although we register a ABRT handler to kill off QEMU @@ -447,10 +454,10 @@ static QTestState *qtest_spawn_qemu(const char *qemu_= bin, const char *args) exit(1); } #else - s->qemu_pid =3D qtest_create_process(command->str); + pid =3D qtest_create_process(command->str); #endif /* _WIN32 */ =20 - return s; + return qtest_create_test_state(pid); } =20 static char *qtest_socket_path(const char *suffix) --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291233; cv=none; d=zohomail.com; s=zohoarc; b=ff7odGFlyEQZDqLp/4aL9gs6HeSbSy5TLMbxzFgMOtUl0l72uILqdnYGh3/Drqyj2Q0BpZs0Isv7OeWbr6K7g+M639vNYx+geZjf+aXXpk1DdPwIN40Fv4eE4mR28I6uVWy0H/g+xSO8fj++bErDQu1s5elnQ9lG17zU6vQ5uEc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291233; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=wHeL1wm/V33LTNAX5D4U4fJeD/N74KTXsPJSJ4miq/E=; b=Kjt1lt2vuI72EfiHuTovB/EiD/aCoh2Zw7sjr82RUtlgP1nHTqkErs322gTd6qcKkgSI4pIgcUQ9VnfOlUkmWzhh4/glqHC409dlcB6lPDr4CkWZwIHRKB6ASqQwEhJ8ZdfQYoOBZ3PcnC1tErmTe4r9vYqkvnKpSSz0IlSQCWY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291233783724.8599407183682; Fri, 19 Sep 2025 07:13:53 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbra-0000yw-2b; Fri, 19 Sep 2025 10:13:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbr2-0000TZ-JA for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:54 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqt-0007St-Ld for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:51 -0400 Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtmm8023181; Fri, 19 Sep 2025 14:12:40 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx6np7v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:39 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JD4V6N035195; Fri, 19 Sep 2025 14:12:39 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu94y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:39 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYX9003357; Fri, 19 Sep 2025 14:12:38 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-5; Fri, 19 Sep 2025 14:12:38 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=wHeL1wm/V33LTNAX5D4U4fJeD/N74KTXsPJSJ4miq/E=; b= VEcCt84Z9iAnp1tV96+Je/5sKs94EYzWHflmbZt1GY0Bg20Ci4W6j3XiFZjyDGBK dGw0+2PrzgR/6HIQpPyGku7T6dbV1V/VJHeP3ONLunKqMHSxjXsZ+IH88BlwCPsV wtWwQhIpd+9ijthjLmvIHdrr779e+uFCEmnAVTh+1LWG4CPG4HmFNmwKGIUGJvdI vo/uhoGRZlKIFqAiVydQb/Yq+jCTtqgQLeZeF7bc5W914OiqFcqt3pia2nwIxmR5 QAVdPfJiwp9cHE5T+njKoaAPcFVYm9mSczPpjop5kciEajdFwGVUNDfYua9ocVQt bJVbxyo6KgfSugmCOBuQtA== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 04/11] tests/qtest: qtest_qemu_spawn_func Date: Fri, 19 Sep 2025 07:12:26 -0700 Message-Id: <1758291153-349744-5-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Authority-Analysis: v=2.4 cv=TqbmhCXh c=1 sm=1 tr=0 ts=68cd64d7 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=GWFuMjjoAsU5Ejt__ZMA:9 cc=ntf awl=host:13614 X-Proofpoint-GUID: 5j7fPA6rsw0ukk-9TNTQieiNIyFkF4DP X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX3d4Oj3gnrLPD UvMMhBI40ogF3NXUDBMRbAPQ0l2JQw758vGWpY1vKMe1RCpYrm84zKaZYfaJLQVLDVbtHiCywcz aa+hYs8w6Z93toB8ABW0Jnp+wNEYTcYgUGkmZhN/PhWMGVuCMfTQu4mWHeMdy+lQg3H13Hfn1dp DThxaBHQ09XqWw7ytD9i0Y5euUv/JSwKGzxgb+LyxpxeXl28PNxxWHYJCL74rV7hh2x+bIyQ86z xVAucrbCJCYqmRIwsXzqX19x29/fQzBOwT7B/UlmsUCsl3JRntKSvOoua/RHcZIy+VFlyP2G/SK tM/5Cm8FUS6OO6zmFjHrEzKIvxbiomrsuW9X4LWVq5AU7bwsGHllgczpkfcVrZYDu0tCnpC6CYs NGgOuvFaV7/gkO/agziuMVEwNSmOFQ== X-Proofpoint-ORIG-GUID: 5j7fPA6rsw0ukk-9TNTQieiNIyFkF4DP 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; Received-SPF: pass client-ip=205.220.177.32; envelope-from=steven.sistare@oracle.com; helo=mx0b-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291235886116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Allow the qtest_qemu_spawn caller to pass the function to be called to perform the spawn. The opaque argument is needed by a new spawn function in a subsequent patch. Signed-off-by: Steve Sistare --- tests/qtest/libqtest.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index 3fa9317..d97144e 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -418,7 +418,8 @@ static QTestState *qtest_create_test_state(int pid) return s; } =20 -static QTestState *qtest_spawn_qemu(const char *qemu_bin, const char *args) +static QTestState *qtest_spawn_qemu(const char *qemu_bin, const char *args, + void *opaque) { int pid; g_autoptr(GString) command =3D g_string_new(""); @@ -492,9 +493,15 @@ gchar *qtest_qemu_args(const char *extra_args) return args; } =20 +typedef QTestState *(*qtest_qemu_spawn_func)(const char *qemu_bin, + const char *extra_args, + void *opaque); + static QTestState *qtest_init_internal(const char *qemu_bin, const char *extra_args, - bool do_connect) + bool do_connect, + qtest_qemu_spawn_func spawn, + void *opaque) { QTestState *s; int sock, qmpsock, i; @@ -515,7 +522,7 @@ static QTestState *qtest_init_internal(const char *qemu= _bin, sock =3D init_socket(socket_path); qmpsock =3D init_socket(qmp_socket_path); =20 - s =3D qtest_spawn_qemu(qemu_bin, args); + s =3D spawn(qemu_bin, args, opaque); =20 qtest_client_set_rx_handler(s, qtest_client_socket_recv_line); qtest_client_set_tx_handler(s, qtest_client_socket_send); @@ -570,7 +577,8 @@ void qtest_connect(QTestState *s) =20 QTestState *qtest_init_without_qmp_handshake(const char *extra_args) { - return qtest_init_internal(qtest_qemu_binary(NULL), extra_args, true); + return qtest_init_internal(qtest_qemu_binary(NULL), extra_args, true, + qtest_spawn_qemu, NULL); } =20 void qtest_qmp_handshake(QTestState *s, QList *capabilities) @@ -593,7 +601,7 @@ QTestState *qtest_init_ext(const char *var, const char = *extra_args, QList *capabilities, bool do_connect) { QTestState *s =3D qtest_init_internal(qtest_qemu_binary(var), extra_ar= gs, - do_connect); + do_connect, qtest_spawn_qemu, NULL= ); =20 if (do_connect) { qtest_qmp_handshake(s, capabilities); --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291280; cv=none; d=zohomail.com; s=zohoarc; b=fsHRosxWfFkhIPNpPWxIJl5/yGBLjBpG5kLOMALXtLoCH+y93BDIWUSq6MmkIhzgrgqW+aWn8YVXqxNSPnPInULgxkdHcu65XWEZbPMeqKvA6NWAYgq5di9G9BN5F1HlJhRoRX+cxJPUFnneW98kE+hyulW1e8nZ/xDdOrnauFM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291280; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MbX+XABKhHuOtwP1+0G2UmM7gcUxrOsq74D1aZH620A=; b=ngahMmLZAhrBjhCG7UrujtDPU/zr05MUGQ1I0qDUBejxQQsV1JlbUphG1DON6LOBKExR2xTdumW01d2liepQxFQ51QrIn+sd/AwTznrN7b07qyrlM81tdfllGLxJxCFP9m1kyIpNnB8gqjxdstOxvx/GTpuF+mc1vtYfaDHyNig= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291280977212.75861179918206; Fri, 19 Sep 2025 07:14:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrc-00012W-8s; Fri, 19 Sep 2025 10:13:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbrF-0000ah-7U for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:10 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqz-0007T7-AP for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:04 -0400 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDunD7010150; Fri, 19 Sep 2025 14:12:41 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fxb5mm8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:41 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JD4V6O035195; Fri, 19 Sep 2025 14:12:40 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu95c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:40 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXB003357; Fri, 19 Sep 2025 14:12:39 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-6; Fri, 19 Sep 2025 14:12:39 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=MbX+XABKhHuOtwP1+0G2UmM7gcUxrOsq74D1aZH620A=; b= o9mEOsTm8jaNapiLc8UQqSVz+LGLBGV6h0O8ZdG+0n40jCFrAEs1bmCUE1QjKWjM ijZcxVhqjhXXtj2tLFxotKCZMI4IRZBamBKHYWTwTS5Kopg6eN2F2NFvInNqlI5p 41F03FuuoAfAkARvFu5eoryJide4ttjo3BqSJXk2NSf9qL97lG7vEDXrpleYOapI qC/DWF0IVoycSLFgk+dwFYJ3QCY8gPFmdtJ/DpMJeAJwtFX6djoRvXS+MVsa8SlD tYNhHfxdhC8MTjnvIPlHf0hb6yNNi92Fog0k8SD7iI+cfc38vHBfbQR4k6nW38vl 7mF9BRVNVCI4s1FUPce4UA== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 05/11] tests/qtest: qtest_init_after_exec Date: Fri, 19 Sep 2025 07:12:27 -0700 Message-Id: <1758291153-349744-6-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX5xZJZbBmKYfs q6JWrIbZgDNSAFVaY+VjbWAya0jqOcPYbg1kq3trpvRNUyiGO0xwPMWF3m8T5iEDjRcAAbbKeht tFJRGAo3BGc45pgGJ2ea02uIv6QtZ5mKfR2OqJ/KKzpe+4QoLJLHcGPdm6u3DMpGFtLVuRpKk2i l8jGi7Ha9ad6tuwaqYm8OU1LKmPcVWLcovJtTeL1BsOY9L06mIV1PjGVB59gxllde2pjm82Ofze G4e0If28YrWR9PKQFARlZzGcas+ZYPpTCI6iNv2qU3j5jpha+2D3QEXHJfWhwPg8bA1/4tS7r/7 M6XCvR2vFAd3cx/uzJS6lLmyFndVWQkbSW9nqpA3pvEHLwGx2treprR5WBb4ZFNzUIojNASlLTT 08RRT/ZydmCPObS5Kzk2Cp1tfUBDfQ== X-Authority-Analysis: v=2.4 cv=KOJaDEFo c=1 sm=1 tr=0 ts=68cd64d9 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=-mka8b2Hcs0XyqHMhc8A:9 cc=ntf awl=host:13614 X-Proofpoint-GUID: LK_SXmfGJyldr3NlA_Y1jA69ZOKdi3V8 X-Proofpoint-ORIG-GUID: LK_SXmfGJyldr3NlA_Y1jA69ZOKdi3V8 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291282487116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Define a function to create a QTestState object representing the state of QEMU after old QEMU exec's new QEMU. This is needed for testing the cpr-exec migration mode. Signed-off-by: Steve Sistare --- tests/qtest/libqtest.h | 8 ++++++++ tests/qtest/libqtest.c | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/tests/qtest/libqtest.h b/tests/qtest/libqtest.h index a164f58..ce6b9b0 100644 --- a/tests/qtest/libqtest.h +++ b/tests/qtest/libqtest.h @@ -57,6 +57,14 @@ QTestState *qtest_vinitf(const char *fmt, va_list ap) G_= GNUC_PRINTF(1, 0); const char *qtest_qemu_binary(const char *var); =20 /** + * qtest_init_after_exec: + * @from: the previous QEMU state + * + * Return a test state representing new QEMU after @from exec's it. + */ +QTestState *qtest_init_after_exec(QTestState *from); + +/** * qtest_qemu_args: * @extra_args: Other arguments to pass to QEMU. * diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index d97144e..3522d75 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -615,6 +615,25 @@ QTestState *qtest_init_ext(const char *var, const char= *extra_args, return s; } =20 +static QTestState *qtest_attach_qemu(const char *qemu_bin, + const char *extra_args, + void *opaque) +{ + int pid =3D *(int *)opaque; + return qtest_create_test_state(pid); +} + +QTestState *qtest_init_after_exec(QTestState *from) +{ + void *opaque =3D (void *)&from->qemu_pid; + QTestState *s; + + s =3D qtest_init_internal(NULL, NULL, true, qtest_attach_qemu, opaque); + from->qemu_pid =3D -1; + qtest_qmp_handshake(s, NULL); + return s; +} + QTestState *qtest_init(const char *extra_args) { return qtest_init_ext(NULL, extra_args, NULL, true); --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291257; cv=none; d=zohomail.com; s=zohoarc; b=UravFhH/6TENw417ndcIrEW4QDPPX2GyuUJ5HC+MeU9tjZcoQNJHMEGpt5rTekQyQ5UtCuZwhmxt7cJtpaaLSWTvTyU3bpP1iZqcvIJAEiWKhP4aznemgglNOOQdFeh801KjStnn1u2j7eKNC4TTd8Xg1gzm74Y1gNFZ5pIyoNM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291257; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=dY2NOTNkw1LjEzXQTZCL2DtK3kEwH8IcYpiFjp8CfxM=; b=fNGxCXlYXX0bRWyUSkQr7HFcjW/zuStgDFQMWgEOhP2WTApLO0hMiMiADX8USMZEq0y8ZlM+PBh/s53htauZrvczfKWZe9wi766Mi1XzhYygAfY+dGRvBVxoL1vbPTtN313mizkW5arpmCz1XOJmeH0zXoSxTKichJ6tDCj4jw8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17582912574371.447428783237683; Fri, 19 Sep 2025 07:14:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrW-0000ot-Jm; Fri, 19 Sep 2025 10:13:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbr8-0000Uv-Gw for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:01 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqz-0007TJ-JH for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:57 -0400 Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtpX9003410; Fri, 19 Sep 2025 14:12:42 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx8ng7j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:41 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JCXkqs035167; Fri, 19 Sep 2025 14:12:41 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu95u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:41 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXD003357; Fri, 19 Sep 2025 14:12:40 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-7; Fri, 19 Sep 2025 14:12:40 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=dY2NOTNkw1LjEzXQTZCL2DtK3kEwH8IcYpiFjp8CfxM=; b= k8sa82QiK3976rkh6i0m43eg760SAnqJV8YBAMme0qgfgWCV0PSdwms3Xnex3j8D pxhSHUZSy+VpvgFjCNpAObZTfngNDfd1pXgSCnyw1SJIxTaraOZm9dUdFctuImjP 2m5U+QzakmX0vIdbhN0uzjm2oUF8ahQ8z72UH3oTOKT4bDiWijAsIkZyGeBIp90q 4ITF3deHNw95Yn6Vm+FqdI863+cqpyIu4+toppv1rQDhofLXdqMs1iLPOqWpZUD7 JHpUzQn/fb0oguq+tRAYD6W9yaR+VFQaRMjdvsvVu4uqZJNBM/G7ZI03xAYQrYZU A/A6T/OVhy8UgcR6Udf82w== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 06/11] migration-test: only_source option Date: Fri, 19 Sep 2025 07:12:28 -0700 Message-Id: <1758291153-349744-7-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Authority-Analysis: v=2.4 cv=JNU7s9Kb c=1 sm=1 tr=0 ts=68cd64d9 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=lri74naOo4n2Vg3VkkMA:9 a=0bXxn9q0MV6snEgNplNhOjQmxlI=:19 cc=ntf awl=host:13614 X-Proofpoint-ORIG-GUID: -F1OK8KguzKzoD50y86U8us4W40un250 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfXycaHVw+XlYPK CN0kKyaM8xvyKwGxoBh8hbgYJEu7OXKWyQzTWaVMkJumIicEqU1PJWlu3FFwxuF8wP4Q6BpFXNn mMalrKn5JmnksJ3KzcDBD+ffc+57cuU2eeW1sgr6vOGfHlkwlKYdHwNhm7jBkbqUGkzPGCp5g94 +L5Wa3jED8/DKCBYqpdsPJrveuTGWEWqvCNoGwtQjC8/Fckr1rrE+CqKYPXIRaX+tFmScEuxQ69 P1AL0ahK81lK3vOcaVEK6DA74CAtuWUihgfwPOb9k3oMzl36kcEf3EEYL8z0GfhVXa9rqqkONn0 K3XsPAY32MQ+7zXz4SLvKxuMfX3GqyWZ0Uva/YILHwO4CW8794MPyOe8WKYEP0XCS6YH+Z9Hu+k 0GE9IiVcrpMMiIuJ34eU1skBcyyHdg== X-Proofpoint-GUID: -F1OK8KguzKzoD50y86U8us4W40un250 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; Received-SPF: pass client-ip=205.220.177.32; envelope-from=steven.sistare@oracle.com; helo=mx0b-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291258315116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Add the only_source option, analogous to only_target. Signed-off-by: Steve Sistare --- tests/qtest/migration/framework.h | 2 ++ tests/qtest/migration/framework.c | 24 +++++++++++++++--------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/tests/qtest/migration/framework.h b/tests/qtest/migration/fram= ework.h index 01e425e..f1bb9d4 100644 --- a/tests/qtest/migration/framework.h +++ b/tests/qtest/migration/framework.h @@ -103,6 +103,8 @@ typedef struct { */ bool hide_stderr; bool use_shmem; + /* only launch the source process */ + bool only_source; /* only launch the target process */ bool only_target; /* Use dirty ring if true; dirty logging otherwise */ diff --git a/tests/qtest/migration/framework.c b/tests/qtest/migration/fram= ework.c index 407c902..9564293 100644 --- a/tests/qtest/migration/framework.c +++ b/tests/qtest/migration/framework.c @@ -234,7 +234,7 @@ static void migrate_start_set_capabilities(QTestState *= from, QTestState *to, * to mimic as closer as that. */ migrate_set_capability(from, "events", true); - if (!args->defer_target_connect) { + if (!args->defer_target_connect && to) { migrate_set_capability(to, "events", true); } =20 @@ -246,8 +246,10 @@ static void migrate_start_set_capabilities(QTestState = *from, QTestState *to, if (args->caps[MIGRATION_CAPABILITY_MULTIFD]) { migrate_set_parameter_int(from, "multifd-channels", MULTIFD_TEST_CHANNELS); - migrate_set_parameter_int(to, "multifd-channels", - MULTIFD_TEST_CHANNELS); + if (to) { + migrate_set_parameter_int(to, "multifd-channels", + MULTIFD_TEST_CHANNELS); + } } =20 return; @@ -410,11 +412,13 @@ int migrate_start(QTestState **from, QTestState **to,= const char *uri, shmem_opts ? shmem_opts : "", args->opts_target ? args->opts_target : "= ", ignore_stderr); - *to =3D qtest_init_ext(QEMU_ENV_DST, cmd_target, capabilities, - !args->defer_target_connect); - qtest_qmp_set_event_callback(*to, - migrate_watch_for_events, - &dst_state); + if (!args->only_source) { + *to =3D qtest_init_ext(QEMU_ENV_DST, cmd_target, capabilities, + !args->defer_target_connect); + qtest_qmp_set_event_callback(*to, + migrate_watch_for_events, + &dst_state); + } =20 /* * Remove shmem file immediately to avoid memory leak in test failed c= ase. @@ -424,7 +428,9 @@ int migrate_start(QTestState **from, QTestState **to, c= onst char *uri, unlink(shmem_path); } =20 - migrate_start_set_capabilities(*from, *to, args); + migrate_start_set_capabilities(*from, + args->only_source ? NULL : *to, + args); =20 return 0; } --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291403; cv=none; d=zohomail.com; s=zohoarc; b=i+0l/j7tgTM/XlMGGvBpYnqShEYpM9wnqMfAaj9GxtW9qTYlMZ4SNiLxkSZP0owt3GtzJGShXqKnen+ZJN7Aeuwbw+gYQNcdMZV7YPm1Crjd1m828DZWhW/z4Cz2wIe3glM5sZMQVkYOTcpSbeC7Swaz4UDERciLHUDk2dwwKiA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291403; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=KVZKlScSL3fpepmijDdmzuigZVGCzb2oGsUwxVW66x0=; b=MMzwut0G7KvaoccKSPXEp5Wzka58OgeSxwN+owqBly+pVGD0CBtKeUzM7U11/VgT4aDuYyx5ovolGmPUHI//MBvJ3p0BuX2SRZ6Q/qVNz+SDxoZmJv8O2zsfZYH50nLFAHeUs8nxhkTE36pg0RBueuSWsFb9QHkUEySyADcQ9rA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291403586377.6944979225475; Fri, 19 Sep 2025 07:16:43 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbra-0000xO-Kc; Fri, 19 Sep 2025 10:13:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbrC-0000Yw-4o for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:02 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqz-0007TH-JG for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:00 -0400 Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtmJ4023169; Fri, 19 Sep 2025 14:12:43 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx6np81-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:42 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JD3Kc2035230; Fri, 19 Sep 2025 14:12:42 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu96c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:42 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXF003357; Fri, 19 Sep 2025 14:12:41 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-8; Fri, 19 Sep 2025 14:12:41 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=KVZKlScSL3fpepmijDdmzuigZVGCzb2oGsUwxVW66x0=; b= ZzX4FPYCgLjn0Ekjs+xp/JuEL5ZpQB//d/kTj8pf2d4Ot4DOgM0+twTFdkdo+2Fh LL/lFhaCmM/FqVJBWniT9kCPRJVVRyk8MsNVxJT2xpnLFsNCKQvqtNGn7z90ub9E cQDwr6csDM65aQZoOJ+zRGLYWGl2toz+D2LdEibpU14PhVaJQJ3bvDV7zvVBxfgC Lc/aUldOzwqgLzltnVdxzakacxka9dCK1+yTHt6duh74f6CgrXDESGQQcNp5ugy1 mZMXByzWYuIgn6Ofqn1tBzw9w32EmnLGmNqL5H5RgiSFRRJFVnBHDQRebrcfcXZb JyFXPDZG3bW0Vb4z0O4afg== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 07/11] migration-test: shm path accessor Date: Fri, 19 Sep 2025 07:12:29 -0700 Message-Id: <1758291153-349744-8-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Authority-Analysis: v=2.4 cv=TqbmhCXh c=1 sm=1 tr=0 ts=68cd64db b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=mXoANcZEXaB-ueEzDlQA:9 cc=ntf awl=host:13614 X-Proofpoint-GUID: b2W0aUOPtQGiKJ_vT_xq9BwQ8AW8wCC2 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfXwH3/KmeVEsDE vYBAyu4lz4jrdegu5V8xoXUEfG5u1bQ2iLoHcUjZYvrCAhIcewf52M4WrM4ESOSyUaRmkfddR4Y l/D84sh828+E6E0o39Zf27F2fBKxgr+Ih7/b5Run2VEFMNOusfqYPI811JC3Dw/PDAd0/k9n19K JS8IHOZwjj7TP5EOxSyq8mzmpoeNV3+LxFoF5+XPj9zyxOa+0XDbFkI3R6NcZucm6qi6JyoWaeg EMagS1bhokE3f76qVMXd86liyORUliMB/+8CfYm7i/GT+R7Na6BeO5exRZsxOF1IvDm2qjv2cZj 2yuXyxd3aNNUDV4jxskiVUdgYjSgtZ2xBrP+DmQ38hHPtsqepiHnStU9AyE5Qu2Vp3H3OCN4DGT qWr4BoJwRpgekAtvt1iksBfSigmQ3Q== X-Proofpoint-ORIG-GUID: b2W0aUOPtQGiKJ_vT_xq9BwQ8AW8wCC2 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; Received-SPF: pass client-ip=205.220.177.32; envelope-from=steven.sistare@oracle.com; helo=mx0b-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291403977116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Define an accessor for the shm path. It will be referenced from multiple sites in a subsequent patch. Signed-off-by: Steve Sistare --- tests/qtest/migration/framework.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/qtest/migration/framework.c b/tests/qtest/migration/fram= ework.c index 9564293..9d04f36 100644 --- a/tests/qtest/migration/framework.c +++ b/tests/qtest/migration/framework.c @@ -255,6 +255,11 @@ static void migrate_start_set_capabilities(QTestState = *from, QTestState *to, return; } =20 +static char *test_shmem_path(void) +{ + return g_strdup_printf("/dev/shm/qemu-%d", getpid()); +} + int migrate_start(QTestState **from, QTestState **to, const char *uri, MigrateStart *args) { @@ -342,7 +347,7 @@ int migrate_start(QTestState **from, QTestState **to, c= onst char *uri, } =20 if (args->use_shmem) { - shmem_path =3D g_strdup_printf("/dev/shm/qemu-%d", getpid()); + shmem_path =3D test_shmem_path(); 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", --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291274; cv=none; d=zohomail.com; s=zohoarc; b=Deahf1EiJJFlmdDT6gguutOzHfn/J115nOfa56+gB2yJCm3FNSqOc4QR+4DlNmIfLMPK5jOcEX2BAPIaDhXvVtrYteMAx19yIxuYNfHR8IAHZbbacO531p9pMUjb7wPJxPfCNe2DLNqi6i2ySG0M1+XKjVoDwFdERAFRUPC0YHY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291274; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=iSkBmVyrzvdeS7/ZCn59L1EbTtbtoN3x8q49RKreKkE=; b=BxAn2kUFLWBuJkk9NIYmQ7QnXmYglW+SZjIkjcxzJTJ6FLOiyZvqsRbvmoQYXFmuQvfXREQo/r8SuBZ79twFL4pxVfztiXdtL7CQd0wsJAaIb9K9GHv9jtQQBvlGSJkpFo0rXxSVxS+YVzKtV/KtcAUkgqIXGGYF8nB6rwaYA3w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291274855606.4623243494941; Fri, 19 Sep 2025 07:14:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbri-0001E1-84; Fri, 19 Sep 2025 10:13:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbrC-0000Yy-7i for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:02 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqz-0007WG-Bo for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:00 -0400 Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDuSkG018787; Fri, 19 Sep 2025 14:12:45 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx9wpqp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:44 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JCujDQ035132; Fri, 19 Sep 2025 14:12:43 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu96q-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:43 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXH003357; Fri, 19 Sep 2025 14:12:42 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-9; Fri, 19 Sep 2025 14:12:42 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=iSkBmVyrzvdeS7/ZCn59L1EbTtbtoN3x8q49RKreKkE=; b= Xi7P+zeW4KNCuexn3KDbIcKj8wFD4qMjXkW+F9bXiVwcfpyaLMcSiBqiogtyugIy 2i8hioQ8eZ/WlFtMDmlEtCUfVVNBgnpERPfeLpHenedlpXtLRLTyeHK6gvW3UAOE tOPme/Nhn8rAC+dfiujDJJHqwFePqbzpTBDWx4lfj+mxV5AMCI/Jf1T9Yyw2kNoU 6J3UV8RLleH1iyBipWVmDJhyObN9/dvVVBTHR73kY7RbD/iaq4wF7ZPcpnt2dijl p7yhLJ6u93yqY5ujRjTSPsIUKuKFKx3IkWT88vPXvILAx7Nhj4Azev511iWolp3Q fCV9xMG4drONEkzmkkTdFw== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 08/11] migration-test: misc exports Date: Fri, 19 Sep 2025 07:12:30 -0700 Message-Id: <1758291153-349744-9-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-ORIG-GUID: X0Od870uIzKGpWOXA4cSYI2qsySrRwiE X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX0mw/OhepBEvO kWvexzx/VRHRe1VFhF7Lv2+Dp2sClHsyAPbd4pG1BkTeqjlLbFg8kcjKhWORj0wztgKWJIufoDf 8cu+PbLGHGNrGqx1kEvYBhYH++B4miVKDoxP4cWMmSWdpmDGCVGynrA6PUWc27MtqYoASFBBnr2 xBmiefq27Wj4Gn0R2iDhAsJoxv5AbPen/u4ikXzhQCyhiCLC6N1+wiC0e3Zayjhsmg412nXKpgE ehREEzyuFaDcpE0yHeYhRiA8R0dG1gasXxPLbOShwn680Rqwdi70artewbuKBSkN89A0/Ig6nMK SjzxIjx/GvKJiLAZh13PTBm06qtb4QmQQA3sZqryLu64fpxAo5xISRoDE90WM84NDZ1KejxPu1I n1r1x57pTLnIkn6xj8dmguWu2uQ0YA== X-Proofpoint-GUID: X0Od870uIzKGpWOXA4cSYI2qsySrRwiE X-Authority-Analysis: v=2.4 cv=C7vpyRP+ c=1 sm=1 tr=0 ts=68cd64dc b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=ON8abKIKo2PTab2e5BMA:9 cc=ntf awl=host:13614 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291276410116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Export misc definitions needed by the cpr-exec test. Signed-off-by: Steve Sistare --- tests/qtest/migration/bootfile.h | 1 + tests/qtest/migration/framework.h | 4 ++++ tests/qtest/migration/bootfile.c | 5 +++++ tests/qtest/migration/framework.c | 7 +++++-- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/tests/qtest/migration/bootfile.h b/tests/qtest/migration/bootf= ile.h index 6d6a673..96e784b 100644 --- a/tests/qtest/migration/bootfile.h +++ b/tests/qtest/migration/bootfile.h @@ -35,5 +35,6 @@ =20 void bootfile_delete(void); char *bootfile_create(const char *arch, const char *dir, bool suspend_me); +char *bootfile_get(void); =20 #endif /* BOOTFILE_H */ diff --git a/tests/qtest/migration/framework.h b/tests/qtest/migration/fram= ework.h index f1bb9d4..7ff3187 100644 --- a/tests/qtest/migration/framework.h +++ b/tests/qtest/migration/framework.h @@ -18,6 +18,9 @@ #define FILE_TEST_OFFSET 0x1000 #define FILE_TEST_MARKER 'X' =20 +#define QEMU_ENV_SRC "QTEST_QEMU_BINARY_SRC" +#define QEMU_ENV_DST "QTEST_QEMU_BINARY_DST" + typedef struct MigrationTestEnv { bool has_kvm; bool has_tcg; @@ -237,6 +240,7 @@ void *migrate_hook_start_precopy_tcp_multifd_common(QTe= stState *from, =20 typedef struct QTestMigrationState QTestMigrationState; QTestMigrationState *get_src(void); +QTestMigrationState *get_dst(void); =20 #ifdef CONFIG_GNUTLS void migration_test_add_tls(MigrationTestEnv *env); diff --git a/tests/qtest/migration/bootfile.c b/tests/qtest/migration/bootf= ile.c index fac059d..479c432 100644 --- a/tests/qtest/migration/bootfile.c +++ b/tests/qtest/migration/bootfile.c @@ -68,3 +68,8 @@ char *bootfile_create(const char *arch, const char *dir, = bool suspend_me) =20 return bootpath; } + +char *bootfile_get(void) +{ + return bootpath; +} diff --git a/tests/qtest/migration/framework.c b/tests/qtest/migration/fram= ework.c index 9d04f36..8f9e359 100644 --- a/tests/qtest/migration/framework.c +++ b/tests/qtest/migration/framework.c @@ -28,8 +28,6 @@ =20 =20 #define QEMU_VM_FILE_MAGIC 0x5145564d -#define QEMU_ENV_SRC "QTEST_QEMU_BINARY_SRC" -#define QEMU_ENV_DST "QTEST_QEMU_BINARY_DST" #define MULTIFD_TEST_CHANNELS 4 =20 unsigned start_address; @@ -1005,6 +1003,11 @@ QTestMigrationState *get_src(void) return &src_state; } =20 +QTestMigrationState *get_dst(void) +{ + return &dst_state; +} + MigrationTestEnv *migration_get_env(void) { static MigrationTestEnv *env; --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291247; cv=none; d=zohomail.com; s=zohoarc; b=hFxMn1MnpSjSNYtv21r2l93yLQNFbJaEixQd3dgJA219teCno55lHO8VSKNI/td9fJaguLItzazzNGTfMCvIChSAxbcQkuLen1AEwFaATmFQaF8UGcMFqOtJfgZFCJVEKNPc64UC6F6N9LLcJVf4HqPRg/r/14HFHSDD/hRXy0M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291247; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=fI1kqNJSC5ZyO0q0rbr0dSa7aYQgbwPOGlDXHSRJMSQ=; b=AfHiTNhvGfxnR4FtAOse/wy+ydvmtm7SMb7UxSbO83WGa7Yg5HSCAtYpYaUwui3IJhwr4T2rdQQD7bqipVobNjh5GKq8bbjLOLW5oMcHmmeXLOWI6WV1JGWVx8z1dL04Ft+ycqftb48vpaQkiXYYEPj48E2377KmfHYZ08fNlTA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291247555436.1363695163276; Fri, 19 Sep 2025 07:14:07 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbre-00017Y-2p; Fri, 19 Sep 2025 10:13:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbrA-0000V5-TV for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:01 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqy-0007Wg-Di for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:59 -0400 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDu2P4009215; Fri, 19 Sep 2025 14:12:45 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fxb5mmc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:45 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDlolt035170; Fri, 19 Sep 2025 14:12:44 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu970-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:44 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXJ003357; Fri, 19 Sep 2025 14:12:43 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-10; Fri, 19 Sep 2025 14:12:43 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=fI1kqNJSC5ZyO0q0rbr0dSa7aYQgbwPOGlDXHSRJMSQ=; b= Rqd1Qs119YDdha9191AE4gyFFDYoN416Jyff42XAGzncUq/tT/kMddy6Xc5zrlhc /LTgK2caLvUhAx4hyAgYA+caPW4jnemuIokSLBOc+NC6VKsGSoymPuC/mq41dvT7 mgBczHeWeAGcNlpwRB+h/zWI9mHyw6Tt2HHrhRIw5ypvOozHlVmvdSJCrPJ6ZN4Q jH6+QoYcbyPj3ld+akMVDcfIu+KPLcIJA9wiSF9QHrGaXC4evVkVFCXJ3W3BA1Bp xb2gPtoh1A+RkzhyZ0X/tbuQ6yltdZW0L3NehS+RCOzfeNKCa3Y3GCNsBLwUDbu5 w3UeKMQxL5U4zoEik36CdQ== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 09/11] migration-test: migrate_args Date: Fri, 19 Sep 2025 07:12:31 -0700 Message-Id: <1758291153-349744-10-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX5c3zgX19JOfv /rc+KDMsH23PB1ZeXHtXJ7YsoSuXsLuTxmF7uKOP+yWAX7hAhiTDPipgRuD0iFzMYdveI9xYS5o bQa7asTPV+Eef+0HnTGYi8/XtGAFOfoOxlbnOf1+v1hByjEnmtcjOg5x9lrfQ305PlPg0I0ScAy zhfdaxmF588IeZP7Hb994iMWyJ5Bt04uVdv3WUKHZsSx0fH74SxPUQIbpzbL4XBAUqf7GC2Ajvr S/zx0QhjV/6mxvyoGx3f8Zi4TYJnNdiJIWJQxUrZDLJNFbetiI9pUlhIM8JvWutR8aVZSY6Szkp F3R9e26Xu7b6s8BFbjG8mhYTL7es3fL9H2FtcxuUFccf7Au5xmViBl/U+QGM0tjGQt1+TSSMvfm 71GQfH7WVgiVY0tRMok9jbFuXTs5gg== X-Authority-Analysis: v=2.4 cv=KOJaDEFo c=1 sm=1 tr=0 ts=68cd64dd b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=YmwRFIh_-Xcf99jFgVMA:9 cc=ntf awl=host:13614 X-Proofpoint-GUID: Dcw53D9L-l_kKAqqCOcg8IEUCFtQX_Be X-Proofpoint-ORIG-GUID: Dcw53D9L-l_kKAqqCOcg8IEUCFtQX_Be 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -23 X-Spam_score: -2.4 X-Spam_bar: -- X-Spam_report: (-2.4 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291248173116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Define the subroutine migrate_args to return the arguments that are used to exec the source or target qemu process. Signed-off-by: Steve Sistare --- tests/qtest/migration/framework.h | 2 ++ tests/qtest/migration/framework.c | 64 ++++++++++++++++++++++++-----------= ---- 2 files changed, 41 insertions(+), 25 deletions(-) diff --git a/tests/qtest/migration/framework.h b/tests/qtest/migration/fram= ework.h index 7ff3187..51a8a7e 100644 --- a/tests/qtest/migration/framework.h +++ b/tests/qtest/migration/framework.h @@ -226,6 +226,8 @@ typedef struct { void wait_for_serial(const char *side); void migrate_prepare_for_dirty_mem(QTestState *from); void migrate_wait_for_dirty_mem(QTestState *from, QTestState *to); + +void migrate_args(char **from, char **to, const char *uri, MigrateStart *a= rgs); int migrate_start(QTestState **from, QTestState **to, const char *uri, MigrateStart *args); void migrate_end(QTestState *from, QTestState *to, bool test_dest); diff --git a/tests/qtest/migration/framework.c b/tests/qtest/migration/fram= ework.c index 8f9e359..2dfb1ee 100644 --- a/tests/qtest/migration/framework.c +++ b/tests/qtest/migration/framework.c @@ -258,13 +258,12 @@ static char *test_shmem_path(void) return g_strdup_printf("/dev/shm/qemu-%d", getpid()); } =20 -int migrate_start(QTestState **from, QTestState **to, const char *uri, - MigrateStart *args) +void migrate_args(char **from, char **to, const char *uri, MigrateStart *a= rgs) { /* options for source and target */ g_autofree gchar *arch_opts =3D NULL; - g_autofree gchar *cmd_source =3D NULL; - g_autofree gchar *cmd_target =3D NULL; + gchar *cmd_source =3D NULL; + gchar *cmd_target =3D NULL; const gchar *ignore_stderr; g_autofree char *shmem_opts =3D NULL; g_autofree char *shmem_path =3D NULL; @@ -273,23 +272,10 @@ int migrate_start(QTestState **from, QTestState **to,= const char *uri, const char *memory_size; const char *machine_alias, *machine_opts =3D ""; g_autofree char *machine =3D NULL; - const char *bootpath; - g_autoptr(QList) capabilities =3D migrate_start_get_qmp_capabilities(a= rgs); + const char *bootpath =3D bootfile_get(); g_autofree char *memory_backend =3D NULL; const char *events; =20 - if (args->use_shmem) { - if (!g_file_test("/dev/shm", G_FILE_TEST_IS_DIR)) { - g_test_skip("/dev/shm is not supported"); - return -1; - } - } - - dst_state =3D (QTestMigrationState) { }; - src_state =3D (QTestMigrationState) { }; - bootpath =3D bootfile_create(arch, tmpfs, args->suspend_me); - src_state.suspend_me =3D args->suspend_me; - if (strcmp(arch, "i386") =3D=3D 0 || strcmp(arch, "x86_64") =3D=3D 0) { memory_size =3D "150M"; =20 @@ -365,7 +351,7 @@ int migrate_start(QTestState **from, QTestState **to, c= onst char *uri, if (!qtest_has_machine(machine_alias)) { g_autofree char *msg =3D g_strdup_printf("machine %s not supported= ", machine_alias); g_test_skip(msg); - return -1; + return; } =20 machine =3D resolve_machine_version(machine_alias, QEMU_ENV_SRC, @@ -386,12 +372,6 @@ int migrate_start(QTestState **from, QTestState **to, = const char *uri, shmem_opts ? shmem_opts : "", args->opts_source ? args->opts_source : "= ", ignore_stderr); - if (!args->only_target) { - *from =3D qtest_init_ext(QEMU_ENV_SRC, cmd_source, capabilities, t= rue); - qtest_qmp_set_event_callback(*from, - migrate_watch_for_events, - &src_state); - } =20 /* * If the monitor connection is deferred, enable events on the command= line @@ -415,6 +395,39 @@ int migrate_start(QTestState **from, QTestState **to, = const char *uri, shmem_opts ? shmem_opts : "", args->opts_target ? args->opts_target : "= ", ignore_stderr); + + *from =3D cmd_source; + *to =3D cmd_target; +} + +int migrate_start(QTestState **from, QTestState **to, const char *uri, + MigrateStart *args) +{ + g_autofree gchar *cmd_source =3D NULL; + g_autofree gchar *cmd_target =3D NULL; + g_autoptr(QList) capabilities =3D migrate_start_get_qmp_capabilities(a= rgs); + + if (args->use_shmem) { + if (!g_file_test("/dev/shm", G_FILE_TEST_IS_DIR)) { + g_test_skip("/dev/shm is not supported"); + return -1; + } + } + + dst_state =3D (QTestMigrationState) { }; + src_state =3D (QTestMigrationState) { }; + bootfile_create(qtest_get_arch(), tmpfs, args->suspend_me); + src_state.suspend_me =3D args->suspend_me; + + migrate_args(&cmd_source, &cmd_target, uri, args); + + if (!args->only_target) { + *from =3D qtest_init_ext(QEMU_ENV_SRC, cmd_source, capabilities, t= rue); + qtest_qmp_set_event_callback(*from, + migrate_watch_for_events, + &src_state); + } + if (!args->only_source) { *to =3D qtest_init_ext(QEMU_ENV_DST, cmd_target, capabilities, !args->defer_target_connect); @@ -428,6 +441,7 @@ int migrate_start(QTestState **from, QTestState **to, c= onst char *uri, * It's valid because QEMU has already opened this file */ if (args->use_shmem) { + g_autofree char *shmem_path =3D test_shmem_path(); unlink(shmem_path); } =20 --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291274; cv=none; d=zohomail.com; s=zohoarc; b=Bze7IYXUBxDQgXvsHV3D/1C8zGoOU0fGuTiE+jWguTRpuY7Y3pjLARp3x2CDT1Rufcp/l3Cz34JlVGIfV57agGVuqhZE03GYm4Po1ExJEWlsSWzgyQpKbpwER81TUHANdKhUVU/M+6funwonIZBrkfp5j8+6lhkkUyZ4FC45siI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291274; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=C94fURgxAcm48QywS9BooAcBLZJFdjmOuloYy2rtAog=; b=EKGMHxMbmXtG/hRWVygmJTVxeYUgi2s4A6j6iDc+R3NAU0rwj0xdgFqm5KKmbhqdwQjqva7esmd9z8/tkAILaK3hvHgP/HgX1CuNgyikA3m7QRuflYODNvNOkJTRkBvaAMBHwUk4TVRM8RGf8MRdo0jeXhIcRbox/EkB0sYzShk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291274848232.0484383061879; Fri, 19 Sep 2025 07:14:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrh-0001DW-9e; Fri, 19 Sep 2025 10:13:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbrB-0000V9-8l for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:01 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbqz-0007Wi-Ce for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:12:59 -0400 Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtphp015796; Fri, 19 Sep 2025 14:12:45 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx95m0u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:45 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JCUAfh035203; Fri, 19 Sep 2025 14:12:45 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu97m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:45 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXL003357; Fri, 19 Sep 2025 14:12:44 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-11; Fri, 19 Sep 2025 14:12:44 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=C94fURgxAcm48QywS9BooAcBLZJFdjmOuloYy2rtAog=; b= rKo7Yj2zAEPUbq7WYJky85OtGgto8jrSsEFehD9ghhV8QyAEZ1J01gjeA/yTnYYx z5EJXc9+NeO/YtkBHXPuu424oZuJh44geuReiSVMAjIvD3M9JkJO1veXLIHrrNDm rnR8TXIcMlgKISlcfv8wGZtU30RfBvopsqfr5aNQmygmzsZ/FpYcnuteMBtUoOth hQfs8YNR5UzyLTUEOV8nnzy8US+medGP1TFkJM93sy6PftWPlkXT/2fO6Mo2bswp aNHScTuZ/tUC5SC3g9RB+0Li6R5ZnQAPraEiGOedd3EyHQD8hKEoCqOcurwM/p8J eXYtPGNTa5Y1BeEADQe7lw== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 10/11] migration-test: strv parameter Date: Fri, 19 Sep 2025 07:12:32 -0700 Message-Id: <1758291153-349744-11-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-ORIG-GUID: 0n83KltxGh5VqQ7EyK0GtZ6_qeLTzGBC X-Proofpoint-GUID: 0n83KltxGh5VqQ7EyK0GtZ6_qeLTzGBC X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX7PbAHpzBcBn6 C3f0veiOMR085J3Jvdxe4KIzISxVkajm/MtgvQvfxopix1agYrKkjPihEhkoYnoacXn/ytkMVJq 2Ws4QOm7cZCRqx6fwXP2WgXrFv0mRO70vvqubj0ITX7HPZ1EmPJT7tfwC66nwBaE+ZoxOXv3B7A +VcdkHa8XIZYfDhGvDomDyJUUI+Kw8b3styaTP6g6a3m0fAEaCXb33tWbfpYMR2FyozwC29LXn6 Cha+jked8qnND9Zv7jdy/PrizX8J84mAtualyuQFojK4vvNuTOpLtrmFGC/C/QhLdH3h3q2iZXm tpmGxKNniQ9NZj7u+U6KHkk24TtPdNfXzjKiD4gXIXpexPbzjMFMXnm5Npz7J6Z2WnOrsgDDtw6 wUhhzNQfWolgHOFGDx7WPJEnxTTWAw== X-Authority-Analysis: v=2.4 cv=N/QpF39B c=1 sm=1 tr=0 ts=68cd64dd b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=7rmqtDVDOkByKEcGYTsA:9 cc=ntf awl=host:13614 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; Received-SPF: pass client-ip=205.220.177.32; envelope-from=steven.sistare@oracle.com; helo=mx0b-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291276456116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Define migrate_set_parameter_strv. Signed-off-by: Steve Sistare --- tests/qtest/migration/migration-qmp.h | 2 ++ tests/qtest/migration/migration-qmp.c | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/tests/qtest/migration/migration-qmp.h b/tests/qtest/migration/= migration-qmp.h index faa8181..44482d2 100644 --- a/tests/qtest/migration/migration-qmp.h +++ b/tests/qtest/migration/migration-qmp.h @@ -34,6 +34,8 @@ void read_blocktime(QTestState *who); void wait_for_migration_pass(QTestState *who, QTestMigrationState *src_sta= te); void migrate_set_parameter_str(QTestState *who, const char *parameter, const char *value); +void migrate_set_parameter_strv(QTestState *who, const char *parameter, + char **strv); void migrate_set_parameter_bool(QTestState *who, const char *parameter, int value); void migrate_ensure_non_converge(QTestState *who); diff --git a/tests/qtest/migration/migration-qmp.c b/tests/qtest/migration/= migration-qmp.c index 66dd369..c803fce 100644 --- a/tests/qtest/migration/migration-qmp.c +++ b/tests/qtest/migration/migration-qmp.c @@ -442,6 +442,22 @@ void migrate_set_parameter_str(QTestState *who, const = char *parameter, migrate_check_parameter_str(who, parameter, value); } =20 +void migrate_set_parameter_strv(QTestState *who, const char *parameter, + char **strv) +{ + g_autofree char *args =3D g_strjoinv("\",\"", strv); + g_autoptr(GString) value =3D g_string_new(""); + g_autofree char *command =3D NULL; + + g_string_printf(value, "\"%s\"", args); + + command =3D g_strdup_printf("{ 'execute': 'migrate-set-parameters'," + "'arguments': { %%s: [ %s ]}}", + value->str); + + qtest_qmp_assert_success(who, command, parameter); +} + static long long migrate_get_parameter_bool(QTestState *who, const char *parameter) { --=20 1.8.3.1 From nobody Sun Sep 28 15:29:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=reject dis=none) header.from=oracle.com ARC-Seal: i=1; a=rsa-sha256; t=1758291329; cv=none; d=zohomail.com; s=zohoarc; b=FgShUX2M8K9fNoRpLvm8mIhBCmpecZtZhOcdvv3JMYT31n+agWpaKE79vyFrtmhQsv+5EW18RBkgPXD/3/dV19+3g7sQ/cvxaP9JcT3RnvVD4ATa7dcTuM92fqg1OaLD8OxcUYQ5IriN8++fc3/RWJ/1UY78gGCy7DHpDVV4P0A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1758291329; h=Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=wXZLS5UtEyfzb4d7ZH/lUrbR16DqyuP19wLDXUNyxLk=; b=C7SoAEDPEE8CUcBuN4F8nrpz4Yp4fOsK8W1TnFdeT/8Pgl7kEQrrXLh4XtYsdr7pM3tqnLtwxWA4NxhoxzGCkAGAdW4NGH4wOt0wLlhpP7ITiZDOYGmDQPWDBcqsotat8PDXyszF8wu50a3TgLSrwAFoRh196vXI2C8JFJsIt+A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1758291328989213.53244630842607; Fri, 19 Sep 2025 07:15:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uzbrd-00013j-93; Fri, 19 Sep 2025 10:13:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbrO-0000dN-Vn for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:16 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uzbr1-0007X5-AY for qemu-devel@nongnu.org; Fri, 19 Sep 2025 10:13:11 -0400 Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 58JDtx9Y017770; Fri, 19 Sep 2025 14:12:47 GMT Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 497fx9wpqs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:47 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 58JCbtwr035133; Fri, 19 Sep 2025 14:12:46 GMT Received: from pps.reinject (localhost [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 494y2pu982-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 19 Sep 2025 14:12:45 +0000 Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 58JECYXN003357; Fri, 19 Sep 2025 14:12:45 GMT Received: from ca-dev63.us.oracle.com (ca-dev63.us.oracle.com [10.211.8.221]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTP id 494y2pu924-12; Fri, 19 Sep 2025 14:12:45 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :date:from:in-reply-to:message-id:references:subject:to; s= corp-2025-04-25; bh=wXZLS5UtEyfzb4d7ZH/lUrbR16DqyuP19wLDXUNyxLk=; b= VqbZmwJnwN1rXp+cWsxcxfbPmgy1HMuyhDn/tTNfVNP6+0qDU/z/k6d06lL8Rq+Z 5cJO0xmwP1P+jn8lgj/CkrP14uoJeYpQEuWR8AN80iLFRFvgtXXP6DCgtAOF4x8w 3Cb2+WVtQpW7PRH/kgFe9cnD+FXQPUmd2wS5i3lF9TZ8yM8+3/hkbjIQ8p/DhZ/X Qv8iy4UGlfkA3+2y5CfQUm8Efiz9p6ch/a8ErXvpitJDPKJgbunxy4LVywa2rkvF rllLJpkYlKc6jDl5tDvypkcAaPiDSC2Ej1xj8VUcI+TNMQqtO2px39LiheZDDCOu k0rsYMX8ep31yzYm2p6zJA== From: Steve Sistare To: qemu-devel@nongnu.org Cc: Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Peter Xu , Steve Sistare Subject: [PATCH V1 11/11] migration-test: test cpr-exec Date: Fri, 19 Sep 2025 07:12:33 -0700 Message-Id: <1758291153-349744-12-git-send-email-steven.sistare@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> References: <1758291153-349744-1-git-send-email-steven.sistare@oracle.com> X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-09-19_01,2025-09-19_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2508110000 definitions=main-2509190132 X-Proofpoint-ORIG-GUID: Iy526LlzEYDF6NcBbSJP4D-AF4Ps00Ze X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwOTE2MDIwMiBTYWx0ZWRfX1eNNbEDgQsZr cW8DdeLiB3qLGd1iXCPIjAPgWKCW/xxeHhY4FYHCFChlRNyoBMKeSOjqfwJBeOmsmnUszjj8ao3 xDYMNNYF3aMspDY04UIzOv4OlwtMjjOB/5oL/m1B8r5+39iX4z9a+SII/tHv42U6dOaxs4SLROh hYUAXuPH4uOscQWTOHkLBTQp0gq8iF+/ihlBqtI8RIhQAm4KSoNPqXkaH0qnZOrB/KR8GRWnuXz XbqAt7rQbyoqydmF2GGwlZsBSWxD0qxCU15zqgi9p8dMe/AM1tKV2ERWsCTtyOKzh76WN2eCraf qOhHnI/YRPe8fkKIPjLqrUK9DCSkvsxNkuI9ou826Jnk9kfp6okVG/X6Na7do1N68BYKcqK4rMu 9KovxICraRxrGRRUczsmPftj7T23lw== X-Proofpoint-GUID: Iy526LlzEYDF6NcBbSJP4D-AF4Ps00Ze X-Authority-Analysis: v=2.4 cv=C7vpyRP+ c=1 sm=1 tr=0 ts=68cd64df b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==:17 a=yJojWOMRYYMA:10 a=yPCof4ZbAAAA:8 a=6wcYFj--zyk-7TOt8ToA:9 cc=ntf awl=host:13614 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; Received-SPF: pass client-ip=205.220.165.32; envelope-from=steven.sistare@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, T_SPF_HELO_TEMPERROR=0.01, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @oracle.com) X-ZM-MESSAGEID: 1758291331338116600 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Add a test for the cpr-exec migration mode. Signed-off-by: Steve Sistare --- tests/qtest/migration/cpr-tests.c | 120 ++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 120 insertions(+) diff --git a/tests/qtest/migration/cpr-tests.c b/tests/qtest/migration/cpr-= tests.c index 5e764a6..f33af76 100644 --- a/tests/qtest/migration/cpr-tests.c +++ b/tests/qtest/migration/cpr-tests.c @@ -110,6 +110,125 @@ static void test_mode_transfer_defer(void) test_mode_transfer_common(true); } =20 +static void set_cpr_exec_args(QTestState *who, MigrateCommon *args) +{ + g_autofree char *qtest_from_args =3D NULL; + g_autofree char *from_args =3D NULL; + g_autofree char *to_args =3D NULL; + g_autofree char *exec_args =3D NULL; + g_auto(GStrv) argv =3D NULL; + char *from_str, *src, *dst; + + args->start.hide_stderr =3D false; /* omit redirection word from ar= gs */ + migrate_args(&from_args, &to_args, args->listen_uri, &args->start); + qtest_from_args =3D qtest_qemu_args(from_args); + + /* De-dup spaces so argv does not contain empty strings */ + from_str =3D src =3D dst =3D g_strstrip(qtest_from_args); + do { + if (*src !=3D ' ' || src[-1] !=3D ' ') { + *dst++ =3D *src; + } + } while (*src++); + + exec_args =3D g_strconcat(qtest_qemu_binary(QEMU_ENV_SRC), + " -incoming defer ", from_str, NULL); + argv =3D g_strsplit(exec_args, " ", -1); + migrate_set_parameter_strv(who, "cpr-exec-command", argv); +} + +static void wait_for_migration_event(QTestState *who, const char *waitfor) +{ + QDict *rsp, *data; + char *status; + bool done =3D false; + + while (!done) { + rsp =3D qtest_qmp_eventwait_ref(who, "MIGRATION"); + g_assert(qdict_haskey(rsp, "data")); + data =3D qdict_get_qdict(rsp, "data"); + g_assert(qdict_haskey(data, "status")); + status =3D g_strdup(qdict_get_str(data, "status")); + g_assert(strcmp(status, "failed")); + done =3D !strcmp(status, waitfor); + qobject_unref(rsp); + } +} + +static void test_cpr_exec(MigrateCommon *args) +{ + QTestState *from, *to; + void *data_hook =3D NULL; + g_autofree char *connect_uri =3D g_strdup(args->connect_uri); + g_autofree char *filename =3D g_strdup_printf("%s/%s", tmpfs, + FILE_TEST_FILENAME); + + + if (migrate_start(&from, NULL, args->listen_uri, &args->start)) { + return; + } + + /* Source and dest never run concurrently */ + g_assert_false(args->live); + + if (args->start_hook) { + data_hook =3D args->start_hook(from, NULL); + } + + wait_for_serial("src_serial"); + set_cpr_exec_args(from, args); + migrate_set_capability(from, "events", true); + migrate_qmp(from, NULL, connect_uri, NULL, "{}"); + wait_for_migration_event(from, "completed"); + + to =3D qtest_init_after_exec(from); + + qtest_qmp_assert_success(to, "{ 'execute': 'migrate-incoming'," + " 'arguments': { " + " 'channels': [ { 'channel-type': 'main'= ," + " 'addr': { 'transport': 'file'," + " 'filename': %s," + " 'offset': 0 } } ] } }", + filename); + wait_for_migration_complete(to); + + wait_for_resume(to, get_dst()); + /* Device on target is still named src_serial because args do not chan= ge */ + wait_for_serial("src_serial"); + + if (args->end_hook) { + args->end_hook(from, to, data_hook); + } + + migrate_end(from, to, args->result =3D=3D MIG_TEST_SUCCEED); +} + +static void *test_mode_exec_start(QTestState *from, QTestState *to) +{ + assert(!to); + migrate_set_parameter_str(from, "mode", "cpr-exec"); + return NULL; +} + +static void test_mode_exec(void) +{ + g_autofree char *uri =3D g_strdup_printf("file:%s/%s", tmpfs, + FILE_TEST_FILENAME); + g_autofree char *listen_uri =3D g_strdup_printf("defer"); + + MigrateCommon args =3D { + .start.only_source =3D true, + .start.opts_source =3D "-machine aux-ram-share=3Don -nodefaults", + .start.memory_backend =3D "-object memory-backend-memfd,id=3Dpc.ra= m,size=3D%s" + " -machine memory-backend=3Dpc.ram", + .connect_uri =3D uri, + .listen_uri =3D listen_uri, + .start_hook =3D test_mode_exec_start, + }; + + test_cpr_exec(&args); +} + void migration_test_add_cpr(MigrationTestEnv *env) { tmpfs =3D env->tmpfs; @@ -132,5 +251,6 @@ void migration_test_add_cpr(MigrationTestEnv *env) migration_test_add("/migration/mode/transfer", test_mode_transfer); migration_test_add("/migration/mode/transfer/defer", test_mode_transfer_defer); + migration_test_add("/migration/mode/exec", test_mode_exec); } } --=20 1.8.3.1