From nobody Mon Sep 16 19:15:24 2024 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=1695058158; cv=none; d=zohomail.com; s=zohoarc; b=lTVV+2otjShx9SDoqLBrXpp17PAoy6HXXv90KRWc7J+WaEqaZT8vEbYTiMmZayYR2P+Q/TkHUESoaQgCd9iD7wFOCmA7tBxi8RcnmaZB26AAiiGrI0+71+6XmUZhRac05IvGQbsOG4LmWhG7oxmvSb1hAhLD8XuryfyIKzizDQ8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1695058158; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=7m6ZhfyJCfU+LqraU6Ps/zeNxE5mlr1xY4cZUtnPWNA=; b=clIgV2EZJF+PVq7zj+dGMJZZ14+yux4YTohamXoUxV4v9TkZJ9RAG/dZHonmP6Nk/p6MR17H009Gxc3z0YTPaEGr0AWnW+0i7RAbNxE1D1QudkJX3UQiDE2ffqU1RPA9Sq+MhdpAuw4KAgua76YdRFVPI2RJAYV4EMUAiFF3bg4= 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 169505815862314.77789642875689; Mon, 18 Sep 2023 10:29:18 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qiI34-0006mn-PG; Mon, 18 Sep 2023 13:28:38 -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 1qiI2y-0006lf-SU for qemu-devel@nongnu.org; Mon, 18 Sep 2023 13:28:34 -0400 Received: from smtp-out2.suse.de ([195.135.220.29]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qiI2x-0004SL-Bl for qemu-devel@nongnu.org; Mon, 18 Sep 2023 13:28:32 -0400 Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id D77052003E; Mon, 18 Sep 2023 17:28:29 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 599901358A; Mon, 18 Sep 2023 17:28:28 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id yGdTCbyICGUoGAAAMHmgww (envelope-from ); Mon, 18 Sep 2023 17:28:28 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1695058109; 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=7m6ZhfyJCfU+LqraU6Ps/zeNxE5mlr1xY4cZUtnPWNA=; b=ky/YbMd5m7akAzDp6ONouzIbesb3/wanx7rp0Wvt2koshNTbgcU6vyBPoAMF0Y130EzZMv /KxxsB4SJ5q61SfNJAuugbOBN9YfN8qqdX+Ad1epAWBRc0N/Fop9IVhdrQjPbElJjn95B3 npfLcq5WYtrTt84Egff9GOZ/CV8VUJ0= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1695058109; 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=7m6ZhfyJCfU+LqraU6Ps/zeNxE5mlr1xY4cZUtnPWNA=; b=kyOIZpN5U+nwtrDkgHVzRRydZBbjPppZCsSCtT71jZnmDkvWK/m7nUxS6KnehgERl+QmFA pgUzWEWK2RY8ypBg== From: Fabiano Rosas To: qemu-devel@nongnu.org Cc: Juan Quintela , Peter Xu , Stefan Hajnoczi , Leonardo Bras Subject: [PATCH 2/8] migration: Fix possible race when setting rp_state.error Date: Mon, 18 Sep 2023 14:28:16 -0300 Message-Id: <20230918172822.19052-3-farosas@suse.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230918172822.19052-1-farosas@suse.de> References: <20230918172822.19052-1-farosas@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=195.135.220.29; 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: 1695058160252100003 Content-Type: text/plain; charset="utf-8" We don't need to set the rp_state.error right after a shutdown because qemu_file_shutdown() always sets the QEMUFile error, so the return path thread would have seen it and set the rp error itself. Setting the error outside of the thread is also racy because the thread could clear it after we set it. Reviewed-by: Peter Xu Signed-off-by: Fabiano Rosas --- migration/migration.c | 1 - 1 file changed, 1 deletion(-) diff --git a/migration/migration.c b/migration/migration.c index 3ee1e6b0d6..d426b69ada 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -2074,7 +2074,6 @@ static int await_return_path_close_on_source(Migratio= nState *ms) * waiting for the destination. */ qemu_file_shutdown(ms->rp_state.from_dst_file); - mark_source_rp_bad(ms); } trace_await_return_path_close_on_source_joining(); qemu_thread_join(&ms->rp_state.rp_thread); --=20 2.35.3