From nobody Sat Apr 5 08:19:43 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=none dis=none) header.from=suse.de ARC-Seal: i=1; a=rsa-sha256; t=1738864798; cv=none; d=zohomail.com; s=zohoarc; b=JyxTSPg1sRryYchRujKD5MzmIbQLnt4Q/XDl3Whrs63aDGQBOsG6/+KQ2pCL6Vt7o9X8eZ37SGLxfB4PABHrpIwzVAgOn26gWQMWIbjs6q+M6QR1AKUkEWWJdtUUJhuwDuu4RuYTrJNON0CeYeq+TO/kZTHjBvdQulQMwW7d7Gw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1738864798; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=no/uCmxpXOZ2Pbzzc6BaMgFVdtTAkSiF7pAuNlIERws=; b=Mpg8dmLTj2vE5LDafQ+D1pRLWzWv78IYcODWdmXtyumzmShV0+kHipBUzl5MQVBa5leWBUI47da2pcWSXZ9VKdZH6wzzjs0rLqEUc/cCGCz4gvqCHWvrCzqrP9usJjKiH34YC99M8XIlQqGiT04FsedPw2KSVsJgVYJVtlXPBgI= 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1738864798745824.6200568741045; Thu, 6 Feb 2025 09:59:58 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tg69l-00064b-VS; Thu, 06 Feb 2025 12:59:18 -0500 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 1tg69i-00063u-PJ for qemu-devel@nongnu.org; Thu, 06 Feb 2025 12:59:15 -0500 Received: from smtp-out2.suse.de ([2a07:de40:b251:101:10:150:64:2]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tg69e-0001JJ-Vo for qemu-devel@nongnu.org; Thu, 06 Feb 2025 12:59:13 -0500 Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id DABA81F397; Thu, 6 Feb 2025 17:59:09 +0000 (UTC) Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 3A22613697; Thu, 6 Feb 2025 17:59:07 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id AKvAOWv4pGeVZwAAD6G6ig (envelope-from ); Thu, 06 Feb 2025 17:59:07 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1738864749; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=no/uCmxpXOZ2Pbzzc6BaMgFVdtTAkSiF7pAuNlIERws=; b=d6D/gMYrC03qI4NUzTrDnyLa19flSb6v7K6V99S3sB71p10db4R5zVBdT2x1NefCmjAw5m qROqGpz9jxUwepDrLAQv5OGSuMcBV+mWqXT4Xhs3InpfEk3+8Hp2kLwZ1tQEHq3HSYGTjR ewyhc3VCbuC1znjoGbmiQxxTAElBMeE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1738864749; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=no/uCmxpXOZ2Pbzzc6BaMgFVdtTAkSiF7pAuNlIERws=; b=gMyM5U2IAtE+wp3HcGjBv2fMiRqpClRGp7cZTG1ksEC6Wh9bzOJSs5O8EPiODKMoDh0nxI jwhMtsoRWhBoP6BA== Authentication-Results: smtp-out2.suse.de; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1738864749; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=no/uCmxpXOZ2Pbzzc6BaMgFVdtTAkSiF7pAuNlIERws=; b=d6D/gMYrC03qI4NUzTrDnyLa19flSb6v7K6V99S3sB71p10db4R5zVBdT2x1NefCmjAw5m qROqGpz9jxUwepDrLAQv5OGSuMcBV+mWqXT4Xhs3InpfEk3+8Hp2kLwZ1tQEHq3HSYGTjR ewyhc3VCbuC1znjoGbmiQxxTAElBMeE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1738864749; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=no/uCmxpXOZ2Pbzzc6BaMgFVdtTAkSiF7pAuNlIERws=; b=gMyM5U2IAtE+wp3HcGjBv2fMiRqpClRGp7cZTG1ksEC6Wh9bzOJSs5O8EPiODKMoDh0nxI jwhMtsoRWhBoP6BA== From: Fabiano Rosas To: qemu-devel@nongnu.org Cc: Peter Xu , "Maciej S . Szmigiero" , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [RFC PATCH 4/4] migration: Check migration error after loadvm Date: Thu, 6 Feb 2025 14:58:24 -0300 Message-Id: <20250206175824.22664-5-farosas@suse.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20250206175824.22664-1-farosas@suse.de> References: <20250206175824.22664-1-farosas@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.80 X-Spamd-Result: default: False [-2.80 / 50.00]; BAYES_HAM(-3.00)[99.99%]; MID_CONTAINS_FROM(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; R_MISSING_CHARSET(0.50)[]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; MIME_TRACE(0.00)[0:+]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; FUZZY_BLOCKED(0.00)[rspamd.com]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[suse.de:mid,suse.de:email]; RCVD_TLS_ALL(0.00)[] 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=2a07:de40:b251:101:10:150:64:2; envelope-from=farosas@suse.de; helo=smtp-out2.suse.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, 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 @suse.de) X-ZM-MESSAGEID: 1738864800994019100 Content-Type: text/plain; charset="utf-8" We're currently only checking the QEMUFile error after qemu_loadvm_state(). Check the migration error as well to avoid missing errors that might be set by the multifd recv thread. This doesn't break compat between 9.2 and 10.0 because 9.2 still has the multifd recv threads stuck at sync when the source channel shuts down. I.e. it doesn't have commit 1d457daf86 ("migration/multifd: Further remove the SYNC on complete"). QEMU versions with that commit will have compat broken with versions containing this commit. This is not an issue because both will be present in 10.0, but development trees might see a migration error. Signed-off-by: Fabiano Rosas --- migration/savevm.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/migration/savevm.c b/migration/savevm.c index bc375db282..4046faf009 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -2940,7 +2940,11 @@ int qemu_loadvm_state(QEMUFile *f) =20 /* When reaching here, it must be precopy */ if (ret =3D=3D 0) { - ret =3D qemu_file_get_error(f); + if (migrate_has_error(migrate_get_current())) { + ret =3D -EINVAL; + } else { + ret =3D qemu_file_get_error(f); + } } =20 /* --=20 2.35.3