From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: passt.top; dmarc=none (p=none dis=none) header.from=gibson.dropbear.id.au Authentication-Results: passt.top; dkim=pass (2048-bit key; secure) header.d=gibson.dropbear.id.au header.i=@gibson.dropbear.id.au header.a=rsa-sha256 header.s=202502 header.b=ZbD5QvDg; dkim-atps=neutral Received: from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3]) by passt.top (Postfix) with ESMTPS id 58F725A0625 for ; Mon, 10 Feb 2025 10:18:21 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gibson.dropbear.id.au; s=202502; t=1739179087; bh=SEaI1Y753Z7F8IvFPGiucwAwTX7neEDOfZoavahgke8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZbD5QvDgSqHWB0vG61+G1vxwIVURgU1MHHlahmy+lquy6zYxc+NDiV8dPSPLk4fk8 mTUMUG1m0Thg5c6Fwc2eKLUM7iKudpoYvePhAJmAR/EYhRep4oSa4E7ezp938EWTOW pCiRNj8P8hwqB4ow37ELypr0A/d8iz+WKg3sJJgkdf97Wtcmvyxt6UXxbE920v4lDZ lfMqsVJiSwR8k0lIvFOSYEwBWCaMoZpWxs0Jo6j7It0dn53jviscs4sMYEx1UxiLSx KrwOKxgFmumLgi2UAGUx9Q9jA5qJck+qzvfzfqm5YTxlEgMgOW2Pv1YxjC7rxhH13q bL11fMeFICDeg== Received: by gandalf.ozlabs.org (Postfix, from userid 1007) id 4YrzWg5RlWz4x0t; Mon, 10 Feb 2025 20:18:07 +1100 (AEDT) From: David Gibson To: passt-dev@passt.top, Stefano Brivio Subject: [PATCH v14 12/14] fixup: Check for errors on repair mode rollback Date: Mon, 10 Feb 2025 20:18:03 +1100 Message-ID: <20250210091805.2261228-13-david@gibson.dropbear.id.au> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250210091805.2261228-1-david@gibson.dropbear.id.au> References: <20250210091805.2261228-1-david@gibson.dropbear.id.au> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID-Hash: VESPENBBZY5X4WEJGFU6TN4Q4IEGYTTG X-Message-ID-Hash: VESPENBBZY5X4WEJGFU6TN4Q4IEGYTTG X-MailFrom: dgibson@gandalf.ozlabs.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: David Gibson X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Stefano Brivio Check for errors setting REPAIR_OFF in flow_migrate_source_rollback(). In this situation there's not much we can do but die(), but this at least should avoid hard to debug weirdness from continuing to operate with some sockets in repair mode. Signed-off-by: David Gibson --- flow.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/flow.c b/flow.c index 3fdc8881..dbe57082 100644 --- a/flow.c +++ b/flow.c @@ -912,9 +912,11 @@ static int flow_migrate_source_rollback(struct ctx *c, unsigned max_flow, debug("...roll back migration"); foreach_tcp_flow(i, flow, max_flow) - tcp_flow_repair_off(c, &flow->tcp); + if (tcp_flow_repair_off(c, &flow->tcp)) + die("Failed to roll back TCP_REPAIR mode"); - repair_flush(c); + if (repair_flush(c)) + die("Failed to roll back TCP_REPAIR mode"); return ret; } -- 2.48.1