From nobody Sat Apr 27 02:13:12 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6638:38c:0:0:0:0 with SMTP id y12csp2454314jap; Mon, 10 Jan 2022 01:08:43 -0800 (PST) X-Google-Smtp-Source: ABdhPJx37I+HO8kZ+xiOCJFW9+AfXMs8uWH3AzjXQzTKIW7olnCqHmmpPaVmg6d/vDbdv0toOg7l X-Received: by 2002:a63:b245:: with SMTP id t5mr19832389pgo.231.1641805723111; Mon, 10 Jan 2022 01:08:43 -0800 (PST) Return-Path: Received: from sjc.edge.kernel.org (sjc.edge.kernel.org. [147.75.69.165]) by mx.google.com with ESMTPS id b19si1957078pjz.115.2022.01.10.01.08.42 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jan 2022 01:08:43 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3009-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.69.165 as permitted sender) client-ip=147.75.69.165; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=mimecast20200619 header.b=HWGY8Xok; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3009-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.69.165 as permitted sender) smtp.mailfrom="mptcp+bounces-3009-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=suse.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sjc.edge.kernel.org (Postfix) with ESMTPS id 61C5C3E0F44 for ; Mon, 10 Jan 2022 09:08:42 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 47F6A2C9D; Mon, 10 Jan 2022 09:08:41 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.111.102]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2411729CA for ; Mon, 10 Jan 2022 09:08:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1641805718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=XnIspUXdizVfwBHMF9kW+BqpF98bsfnM4PJXXeZwpsc=; b=HWGY8Xok3/ydP3iM0Gbd+K4wSeSb3SC0rNEa4sZntRGMNSelgSb3LvCJxo4Uy6Y1o2s+sC uZLM/lnW7y5wBzTTmZLup2Q1lHkzHKg+OtHn4kwKvyIscFt49D5gSlzskbjCfEeWTE+7qV NdVLQuWZycWOinCZ+XaefzTT4UHLgk0= Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05lp2177.outbound.protection.outlook.com [104.47.17.177]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-22-apjuC2zOM6GL90r_fcSnaA-1; Mon, 10 Jan 2022 10:08:37 +0100 X-MC-Unique: apjuC2zOM6GL90r_fcSnaA-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kyH5ukCd8BIoJdIt3CHPq/oKxdVuO/Iii5Td9t8521jCwEaApACAg1v853EhKl3nCXNYJHJIJcVj/oSKgq7I5rX7yD7XlOmyWndWJJ5ksaWHG2cBfcyALMyMo+HQLgjpGPEYw5S5QIigqfSECclL0S9L/ZOoT60LMmadoQC+hILpKC7b8XKDzCYhWAabivZmOCTMK9/yPsmGk+TWinFAUac+u1wZWppep+ZLjtlWre3xaKRGjMmyXZM/dU68hqfzUCUjzvglOvZwC8StwcukOhvO6Vu7SfuKs0/HKUFOBenRuv3zip1JlS58n9oCK4BIjhqGBU9GeJ9wi3deMhO59A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cuxJqADmkz93qRSbwcoEll6iLavGHM2b3SzGPtrXpwE=; b=h/jxBn94Hmfq4Us13LWTh4pBDk+SJPkunsurFZngx4TbDq/C5N9QYVuIMV0llsBTJmpzv88NOI3Q3adYL8WSQoQ5EcV7+kRPNUNf41UWDP4gVczQ6MlwYRSAUFWj5qlyhnXTJtlDGhtQyrEoWpMRzz8DUAb0GbLST5tAOZMe31/xefizHPkAsZshmH0u092pHuLrSA6/OZv1rMW8OWRA8WyAz1M92cPMhwoAyPiXSgs6/S7+t3uyx0/16986z/keZfSmJ605aRREZ6upkyAD1uRD9U+Wbvkm7Fub4lMdCeARQ9oKNmObdtt6ZrklgrcypWYp7GICtaIMqkq0J1NMfw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by HE1PR04MB3244.eurprd04.prod.outlook.com (2603:10a6:7:1c::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.11; Mon, 10 Jan 2022 09:08:35 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba%4]) with mapi id 15.20.4867.011; Mon, 10 Jan 2022 09:08:35 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang Subject: [PATCH mptcp-next v9 1/5] mptcp: move the declarations of ssk and subflow Date: Mon, 10 Jan 2022 17:08:18 +0800 Message-ID: <935c92627ac820e2a2544a4d79af0c6254a629f1.1641804767.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR03CA0046.apcprd03.prod.outlook.com (2603:1096:202:17::16) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f30de170-96c8-48e5-e160-08d9d418c878 X-MS-TrafficTypeDiagnostic: HE1PR04MB3244:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4714; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vWPoLQe2013y9X7wlWn2EyK7QOhPcLXYcUeXEWOvbir3bVNXUYBqDDIpEn7d6/va51QQhlUVYPeWqSMs43IEP6DRWZklh5qOaM48p5ErUes95v8zZde7A45NpG6/eunTDOap1YoHVZbUokv3+syJaFcIjpBsoKN43SR/0kX4IpCTceZi/zuhewj3ne3v6R4CuAtJf2pknvzu+ETdJjs30odvKkAZOPn0lQrC9d6ydCC2uUXYmRQ+HpfFvG4AMPE5thkkBEaox61U/1WxUtL9feAfBt+DHLI5jOFPG2iR3g91lCWmgSjdoGIsnjDxvwzKrG+tr1pFAWfRmajLYJrRZ7Ooq0Y0YPwE+e2aG1GcwNTTo/bxhKJgv5gXEE8t4zoiPwkfxh8Zs90nW+To23LPofe6jOaF4preY+y3PTrGB3xvaiwXH4dyvnOhpk5sz7fLvyCC/TnUstkdp9/+ZVLdo6vZu537bfscwloFjxt4TpjdWY0hjZ3tHZUXBFTaLTNvttYrju1UECvRfOrBymrWQzqxmJc3rQSCqaiUQvDxtq8pUV9ExeOm20DTUfsb59o0aIuRPNBGlLS147IEvsQ6seo9eg5Dn1ExTCeI+mdpDsijT5xkDXLZ5xbXq4TAWWiocWvLQlq4WHjp83B1RB617w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6486002)(66556008)(6666004)(316002)(6916009)(508600001)(83380400001)(2906002)(26005)(186003)(55236004)(38100700002)(6512007)(5660300002)(2616005)(66476007)(44832011)(4326008)(107886003)(66946007)(6506007)(8936002)(86362001)(36756003)(8676002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Fyy7FfT9GTUo+IdwpdBozAezBDopKY1kWw3ysTb7HUXEPdBqVU+Hu1BvobAW?= =?us-ascii?Q?kXQ8pCX+UXru8aWsd3W9crRBEtkw3Ne9VhA5r1/b2Ey7dMVP4amkilyHAEav?= =?us-ascii?Q?ihYdYy9nKbQC87tUFVAQfApFcgOiokyjyanEBbjkTSvvt2K+tKzBG5bKy5sv?= =?us-ascii?Q?uBICS6ZYl+TSh+MncIlzxi4fki1hLAYu7enkLOOYG69oSASoYfWc/wOv1e7L?= =?us-ascii?Q?8YF7WUxUnt6guazX39ofcGVDjwQd9fSvNS18romqbdM/+HOt2Jj4ygXXNXHh?= =?us-ascii?Q?ItM1lI6UkphAoiyTQ6DtvYZ/IY3WaDPPVAxK5wzvAEz3fVFnMn4mo3Im8xqK?= =?us-ascii?Q?8EYfCUJJROgAj1WmtQCcuTNG0J4PLM6Efw7vCSmD20GBHB9y106AjjLPXR46?= =?us-ascii?Q?eQ1sjAVh1HmLp26OpIyrH/ttWeGTeixXyLKWWMO4F/5/CT7K+rrDUqXbLirZ?= =?us-ascii?Q?QChA1YvOmmMT7TEo0oRotvuNHvMMRsjwV6N7GZcAE/W4+EWk1QOojqP+5wMm?= =?us-ascii?Q?rsfUAHUcio4iF7rgGeOtSCC2F2njkFlMCCO3G25O55BaLweNkdfCyH3vO3Mw?= =?us-ascii?Q?sBvx/XP84YF82FmpOieQccdpafFsIdgUGj4tWXjBhdl+PFq/xCry2OYrajZy?= =?us-ascii?Q?07UV/kCa7Ac9IQ51Rljwh5CWOL9XMTLMsfQ9YPBe5/YzQk+m2oDSxNosBbq9?= =?us-ascii?Q?u6cA0EN02SvugEfuTGvWAa1eSheXO7LFDYFbpTYA7kjs91RgoikOLfs0OF/W?= =?us-ascii?Q?CJ/N+qbKPTPXcZdB4lZ3UZXakSR47PacUngzIcKzW7S2JbMfYzYi9eIdkdrN?= =?us-ascii?Q?c0y8Mv4iWTXuFqQklVP3D+74czpq1ybxpsgIzcTR1w+R76IKbuepTc5Pgv0w?= =?us-ascii?Q?VIzwX6UodvgZ0imBozpe7S1HGAu2EZS+/ev6vY9aZf5QLu9Bu7JnyMxVMrRX?= =?us-ascii?Q?VZ40FvVmmfBrtMMsVeRaqawvJ5YqcdKaYGj2tn//tZVD88KoSsGA3jKTZUFJ?= =?us-ascii?Q?Wdt0KUphmSF0IeIqWWCmOofsWhN1pXH8E/tP0WDmQxm+zIuo6bIbzswiT17d?= =?us-ascii?Q?f05lrVeM1cfWwMIfaFcdumVd5zrLhV2441EgduzN22BSmZrRoxEXTnZkIqtO?= =?us-ascii?Q?I905SGTk+d96KVqMeOw4VUkHNLarSYzM/rBXdzzmauJFvaxNk47Cp9o6ogj1?= =?us-ascii?Q?yMpC49H3W3UqVfkf/uk8GD3aeKcqZB3Fs0vXnScKQM4TBu+zIfJsFULteo/V?= =?us-ascii?Q?csFy/zjEVfE7Yo8S/E3RCl2aFjyd8xZ/aO5fQWD2SaNY1KOmKxayVPbqB6Fx?= =?us-ascii?Q?Ggs9oNcqw0b9LoVttetsjtPXqf2QOIj1ygMMoQUy7Sj9ir0WQNXoGNWAvdeL?= =?us-ascii?Q?2X7GFnc8w9MQHLj111Zf6wO+rkzePwSAaxGqpQo6LCCoM2fOs/bI8QeAmPD5?= =?us-ascii?Q?JxC/kuRIoJkM++6pdMeI0P4cb0xTTnfn3UepWppxmeOqyHGXSIzzKmvkfXnD?= =?us-ascii?Q?6b4zBYSTtXxq2VyaSkfTe8voDaOlEToKmT1YMzpvVzMAcJONlqUnPMZFX8iB?= =?us-ascii?Q?Lk6mJWWicilmfaDSpX1Vu3stUl/fwhNfXZP2Ze/CIBCUHWWIAtG01GYum+Ig?= =?us-ascii?Q?1G7WTVjGz9zPKy/ZZZavLkM=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f30de170-96c8-48e5-e160-08d9d418c878 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2022 09:08:35.8398 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ILZJ2Uvfs/uHizrKs7cas+mOHVtvpvuvNTARtZZRu5msZQTkysG5dogg1SedC6CmX+2qvmftSgz5IFWdLkK9nA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR04MB3244 Content-Type: text/plain; charset="utf-8" Move the declarations of ssk and subflow in MP_FAIL and MP_PRIO to the beginning of the function mptcp_write_options(). Signed-off-by: Geliang Tang Reviewed-by: Mat Martineau --- net/mptcp/options.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/net/mptcp/options.c b/net/mptcp/options.c index bbf61dedb4b5..3230166d6f83 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -1264,10 +1264,10 @@ static u16 mptcp_make_csum(const struct mptcp_ext *= mpext) void mptcp_write_options(__be32 *ptr, const struct tcp_sock *tp, struct mptcp_out_options *opts) { - if (unlikely(OPTION_MPTCP_FAIL & opts->suboptions)) { - const struct sock *ssk =3D (const struct sock *)tp; - struct mptcp_subflow_context *subflow; + const struct sock *ssk =3D (const struct sock *)tp; + struct mptcp_subflow_context *subflow; =20 + if (unlikely(OPTION_MPTCP_FAIL & opts->suboptions)) { subflow =3D mptcp_subflow_ctx(ssk); subflow->send_mp_fail =3D 0; =20 @@ -1489,9 +1489,6 @@ void mptcp_write_options(__be32 *ptr, const struct tc= p_sock *tp, } =20 if (OPTION_MPTCP_PRIO & opts->suboptions) { - const struct sock *ssk =3D (const struct sock *)tp; - struct mptcp_subflow_context *subflow; - subflow =3D mptcp_subflow_ctx(ssk); subflow->send_mp_prio =3D 0; =20 --=20 2.31.1 From nobody Sat Apr 27 02:13:12 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6638:38c:0:0:0:0 with SMTP id y12csp2454382jap; Mon, 10 Jan 2022 01:08:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJzR3YJ+3PBXGJyLVmnfMFEzX6EMur8MZ3c8+sPfADVMfWS9TauHOK5JpcEmhwEWNag430sI X-Received: by 2002:ad4:5de7:: with SMTP id jn7mr3354383qvb.31.1641805730527; Mon, 10 Jan 2022 01:08:50 -0800 (PST) Return-Path: Received: from ewr.edge.kernel.org (ewr.edge.kernel.org. [147.75.197.195]) by mx.google.com with ESMTPS id m13si2542169qtk.8.2022.01.10.01.08.50 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jan 2022 01:08:50 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3010-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) client-ip=147.75.197.195; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=mimecast20200619 header.b=N4T92oOV; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3010-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-3010-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=suse.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ewr.edge.kernel.org (Postfix) with ESMTPS id 3FD951C0B4A for ; Mon, 10 Jan 2022 09:08:50 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id CC2862CA3; Mon, 10 Jan 2022 09:08:48 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.111.102]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 62A1A2C9D for ; Mon, 10 Jan 2022 09:08:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1641805725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=u2ee6Gq1mVtm45VNgMmbaWyfF+Rcs39fvVaBoAEquT0=; b=N4T92oOVWCioZmV5mCM/86GQZ0RzfnR4Fe63c5lHI2J98a7IWFEBl9+bJJ6wV+mGSLgrYy unITjTPxIeJeF/GBpAFhRBgY/7sF4vnauKt9ELxa0TuTprr1Ni5fvzLj7R/IMMWiuCOnKe Dl4faINzoXUocYeq+PzA06zrJ097liQ= Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01lp2058.outbound.protection.outlook.com [104.47.0.58]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-2-pkHviw2cOFe9IxaTNIgZFg-1; Mon, 10 Jan 2022 10:08:44 +0100 X-MC-Unique: pkHviw2cOFe9IxaTNIgZFg-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DX6F0XUOJa3ZF2Bd3DD5nyBu4u/WqHXs8rpcF9eKiRyr/tX8kE0alSlPoAMe8wJNxABmwxjWlamaGAEDvYV1pAXlfYHN5FSADIoxAk4pAnNbk5KJvhU11LxX33qtwf8AyFATVZiIg2fQ4s7vgMv0WAb7SF2n/UlLVJBLVNRkO5GQ1qOj8Z0pOM+kJ5aELmsxh2av/gpXsKXp2kFLeDsn8aaQfbtMiKG0qCaJHxPA23TodXw+0TDn6wJHzDc9Nnu13T+0cAA5oluwQtb6UNbHJEUSc4kE8x1cvwfIfR3BbpJoMeJavChPdrQG7jYHsLOR5sMO0sM9/bhFO7VEuc9fJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IWe3GSHacyDHJ2B76wnAKgLSo0otI/Ew5NmTm/9FXy0=; b=lZ9PJTpf346SSFlsiXHZHquof+Bm7ig/UvtIIMTBoawke3v+St1fwcmB3gmGCBK2DgQPwm8sHAz7Tp+fqfi7XMALqg2nagMNk3BhnVrqsyAB/wpqTICplmz21V9I5tNvDCZr6Rv1VqDhQlHA4bhP+ourOsh2CDPTCx24tt8Gskt0asPj1bgqCJO4KWpetAMwXBlDrU+05s1Z6mgdPJucMH1mUAuRobpq+/fZP9hyA5fBLwZaU1+tSzWrgqbOpEL6toNtu5xzJlmuTETU4mGpZjmb8/QHw2u8CywvEdm+gXCFhygAz0QRO4ho3bcegzhy7Ish/2ABJe7zZMK28lcPCA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by HE1PR04MB3244.eurprd04.prod.outlook.com (2603:10a6:7:1c::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.11; Mon, 10 Jan 2022 09:08:44 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba%4]) with mapi id 15.20.4867.011; Mon, 10 Jan 2022 09:08:44 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Matthieu Baerts , Geliang Tang Subject: [PATCH mptcp-next v9 2/5] mptcp: reduce branching when writing MP_FAIL option Date: Mon, 10 Jan 2022 17:08:19 +0800 Message-ID: <87967253a372abdc01610a2c8a8298b8567752d4.1641804767.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR03CA0059.apcprd03.prod.outlook.com (2603:1096:202:17::29) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: afaa5785-078a-4acf-8ed9-08d9d418cd50 X-MS-TrafficTypeDiagnostic: HE1PR04MB3244:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6108; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eWLkS5copO2Ck0I7GoL9Hsa3EfWijb1lTi0K0q5K34qfztAPlG3xPT/KewdclyWZdaUw5hUKAF3x9MMC3vFZTAqlXqvCRffqMMGQ/1ltw1ecv49fbV+3JKlQ0SwIjX3q0/Xx/OG/yQq//GljNbDQnVJVbU0yUCVIL2AKGmvTHX5/mpPYn8p2WdJHCbOJhTH5yBpS7diLNLg2HVTyWwgqI4YsH+LDqF5h4HtnKFYEDvKkcei6Oy1f+68FaqayH25raIdglKjYy7rNDvvuWg5Jl69kiYTav7g1sfajPnOkj+80QppUr85Gk9Vql6QFU6BHvAKe1WQhb4r0kyZMSrhrBV0My1BeH63zKCzYRLRLPShNiIVdx5ZrmaLpUKkIP5XR9lELBexgTnUUd7VcYIBSjPD8KttRmysJUEt4ANgWq+MD2JsdnQOywXcC0Zwck8cIrjYm/o1MgTm2u43tlXV3oFuGaNqieb4zJmyniFOnjxQ4k9sRGzFrrVzAcrK0tfZATVbn6EWeXGTfDjsgtDWfBzaREKtMm3Us6zQ8Iwsac99iYfXf6qLN4oOjqdaEewtzru7kO6RNUxR7ePgW/eyIS4vRq2CfzIOz70ZEcFgrWX7UWrai1RLJN7IXEjv2+B00D8C+kUSe6tGTbX6Dds4Guw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6486002)(66556008)(6666004)(316002)(6916009)(508600001)(83380400001)(2906002)(26005)(54906003)(186003)(55236004)(38100700002)(6512007)(5660300002)(2616005)(66476007)(44832011)(4326008)(107886003)(66946007)(6506007)(8936002)(86362001)(36756003)(8676002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ASjAv9RmU57hx9TYT9nqE2apw12SDZXNsITUrR9vAv+saKr6gOOBxRT0BQdp?= =?us-ascii?Q?he4UyDQPMSlMkbUJ6+XogIQ8jUmG/kbBs8yFF0hXWplYbXtN1yVgIcphbEn/?= =?us-ascii?Q?NKPnXld3vdzmumxIbvqgV0zY+lVCAVCuSO0ZsDaePLWtSgnmoirLe5e+490v?= =?us-ascii?Q?KuYWfWOd+E2wEkjoonXldNtj7jMgfriIysSwErYTaNjXB2Id/LfmkXB8YLvj?= =?us-ascii?Q?XamqACehgq2vhEtRUysOmFkMKJYyVJzLOd6cDR18smQsaJ0/B7gq39h0hI3O?= =?us-ascii?Q?eWteleRPggRsjZjlBSpQ6r2ILKJKL701Qpx4kE0alFR0B9EOdT1MPEdOL4r/?= =?us-ascii?Q?sZLWguK3dtH35yIza73yZAHVu3cPJ4BJSECGFEDg+m25YObzVh6Bgjlt8Zxb?= =?us-ascii?Q?XJMrIP9zW3Kb0yg2GmCZ6LoKvyzIwGcWfhGJbJWBexmtrUEywSYFFA/6LDT3?= =?us-ascii?Q?4tM4QesbIIlneq67mp5dToK3FzfN1z6eeYB3b+GHR29KT/kgZmK01xkKcAJR?= =?us-ascii?Q?1Zacqkl0+Pb0qwgMVbvUdyzMOV0e8nb93O9yrJ20OSt28PhAJnblOt+gpUKa?= =?us-ascii?Q?p/SM5mVI0lw1SuEdOhK+7NYjfbKSIGyBsQrrweP26QlTXYQ4kk+Ly4oLiZBt?= =?us-ascii?Q?qHpjSUyWZZ/4VaYhNgCZotiW7xK4t5ANjaQ+nFRRdx9jeLAAfhHNjgptVICe?= =?us-ascii?Q?J72XwBmW52EYPFNzRyv1x909hMCQaFadJ9RzQaQRz1FdVIUjMXHy9qRli5sL?= =?us-ascii?Q?BwwQQMwi8pLe5cZYUCjYi05BLyYQsZQnU39PeA5JBefASJiVelrgVZaxMLXw?= =?us-ascii?Q?xIIXP5Xoov5Hpnkalk57mdqshcMpjdpwqy44WHpVfRWcSquz22Hxqt9zSMIj?= =?us-ascii?Q?IWBZLCuyl8ge4v/NPzgWwfivpVv/M1MCJz0JHPfuoe8yZnVFCj4NtAhqohVE?= =?us-ascii?Q?o9YP7TMestesOl6rt6wuuvJeARrEzw9zT2cLiiKBf5H2WgyW9vLxc7PMkVwv?= =?us-ascii?Q?uMrHbk8GXRp9WdyohHueRH4uVym9oP4ElClp7wagDiCrEmt6TE5bnT4HtmCP?= =?us-ascii?Q?KFBP6jcHeuDb8WLxgr4fZYX91dqVwk0B5Z8VxWfmK9p/eQ0xgLxXCMObzukf?= =?us-ascii?Q?JJxmPkQdYQfVecW9VMICEhtbatjr7tgDbDstLWaSs8kiD59+cdoazMOGQ3Ed?= =?us-ascii?Q?LAawjWdF5eNQ3WtY0yICdxlAU4vQ3m6eXLlM8HoS9AKQyg/GQ4sM+S/GdynR?= =?us-ascii?Q?glrz+p430JzVMiIQiCFNwytaZYqi2XsEPxJilb0dbaxbAJJp+qFWfi0K6RwH?= =?us-ascii?Q?Jf8gVJaY3CI74c477nagTJVlK68US2hlApE+HdL95OFEzHcLpDtAtoFH3dP0?= =?us-ascii?Q?0hgxhJiPZfjGQNCaaJPg/4rtdJqwCc18lhM5Yte2X15MUZkutIIKSTjVOmeO?= =?us-ascii?Q?pofUieoK2T4F2/FHWMS1L6mgitN2PdrV618vP7/iRZycTprykr8KHY8pqqMr?= =?us-ascii?Q?6thcNHI1Rj66VPaZcA7JA/VEgt+FXR28+zGxLgnN18gJ81oCq+tijgKEN9YY?= =?us-ascii?Q?fz6LfQvE5D14cqLbVwdxsr8WFVFo8TjbRVmCr8Aa5sqidph9tA5Ym13F0aLZ?= =?us-ascii?Q?hx+8XzIaVfja4REx0oDs7Zs=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: afaa5785-078a-4acf-8ed9-08d9d418cd50 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2022 09:08:43.9329 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: gGXWrB7LE78a/fGX7hcS3QvpGDPmhtlmbJwbS2QbjH4JiZoLWLHPOj90pBoha7T1H+23Jx94MNrfHE68jJaXVw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR04MB3244 Content-Type: text/plain; charset="utf-8" From: Matthieu Baerts MP_FAIL should be use in very rare cases, either when the TCP RST flag is set -- with or without an MP_RST -- or with a DSS, see mptcp_established_options(). Here, we do the same in mptcp_write_options(). Co-developed-by: Geliang Tang Signed-off-by: Geliang Tang Signed-off-by: Matthieu Baerts Reviewed-by: Mat Martineau --- net/mptcp/options.c | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/net/mptcp/options.c b/net/mptcp/options.c index 3230166d6f83..491362d8dcda 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -1267,17 +1267,6 @@ void mptcp_write_options(__be32 *ptr, const struct t= cp_sock *tp, const struct sock *ssk =3D (const struct sock *)tp; struct mptcp_subflow_context *subflow; =20 - if (unlikely(OPTION_MPTCP_FAIL & opts->suboptions)) { - subflow =3D mptcp_subflow_ctx(ssk); - subflow->send_mp_fail =3D 0; - - *ptr++ =3D mptcp_option(MPTCPOPT_MP_FAIL, - TCPOLEN_MPTCP_FAIL, - 0, 0); - put_unaligned_be64(opts->fail_seq, ptr); - ptr +=3D 2; - } - /* DSS, MPC, MPJ, ADD_ADDR, FASTCLOSE and RST are mutually exclusive, * see mptcp_established_options*() */ @@ -1336,6 +1325,10 @@ void mptcp_write_options(__be32 *ptr, const struct t= cp_sock *tp, } ptr +=3D 1; } + + /* We might need to add MP_FAIL options in rare cases */ + if (unlikely(OPTION_MPTCP_FAIL & opts->suboptions)) + goto mp_fail; } else if (OPTIONS_MPTCP_MPC & opts->suboptions) { u8 len, flag =3D MPTCP_CAP_HMAC_SHA256; =20 @@ -1476,6 +1469,21 @@ void mptcp_write_options(__be32 *ptr, const struct t= cp_sock *tp, put_unaligned_be64(opts->rcvr_key, ptr); ptr +=3D 2; =20 + if (OPTION_MPTCP_RST & opts->suboptions) + goto mp_rst; + return; + } else if (unlikely(OPTION_MPTCP_FAIL & opts->suboptions)) { +mp_fail: + /* MP_FAIL is mutually exclusive with others except RST */ + subflow =3D mptcp_subflow_ctx(ssk); + subflow->send_mp_fail =3D 0; + + *ptr++ =3D mptcp_option(MPTCPOPT_MP_FAIL, + TCPOLEN_MPTCP_FAIL, + 0, 0); + put_unaligned_be64(opts->fail_seq, ptr); + ptr +=3D 2; + if (OPTION_MPTCP_RST & opts->suboptions) goto mp_rst; return; --=20 2.31.1 From nobody Sat Apr 27 02:13:12 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6638:38c:0:0:0:0 with SMTP id y12csp2454452jap; Mon, 10 Jan 2022 01:08:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJzFMucZuJvBIkD6i9PMnyDCR/HmOyp8dQi8hESdmPCfd62nu4xE9nhWFyBcp3dv5PwPefee X-Received: by 2002:a05:6214:29cf:: with SMTP id gh15mr67734516qvb.4.1641805737448; Mon, 10 Jan 2022 01:08:57 -0800 (PST) Return-Path: Received: from ewr.edge.kernel.org (ewr.edge.kernel.org. [147.75.197.195]) by mx.google.com with ESMTPS id jq13si2543871qvb.51.2022.01.10.01.08.57 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jan 2022 01:08:57 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3011-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) client-ip=147.75.197.195; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=mimecast20200619 header.b=ReafRwRH; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3011-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-3011-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=suse.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ewr.edge.kernel.org (Postfix) with ESMTPS id 25A741C0BA2 for ; Mon, 10 Jan 2022 09:08:57 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E9AEA2CA3; Mon, 10 Jan 2022 09:08:55 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9ECA82C9D for ; Mon, 10 Jan 2022 09:08:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1641805733; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kIerVLmKYRLr9D7gMQbV1LDnYK7cFhblY4TuiJBiG1c=; b=ReafRwRH71y5Rx3pH/6Bv7gOwXE/T8aCbEFIt+8/uL6UpMYdBamCUuAFLkgxVfrTBhtkh7 yXYmZFBvKXBYYL3ONA5nbysJyMpqLnhpvfkHPUDjUB0kDX89AGVukVYzFsKgvew6wdmeAo LKOGffg9LTVOqufYy2h+fUiBXANGyAA= Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01lp2057.outbound.protection.outlook.com [104.47.0.57]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-13--jR_LUIoOV-jFKQQZ-5NVA-1; Mon, 10 Jan 2022 10:08:52 +0100 X-MC-Unique: -jR_LUIoOV-jFKQQZ-5NVA-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YcHcCQFYZmu3lL9AvkGSC8me1ltFl1I6IheDfD5YOYwjdkVrggVgxNPKrKi9ji7vbs8UzsN7ajKJ8IwM/zdizOkJkBCALL5tkSBy+wcz4+ziijBNh1o00FnljruA0Wmur3mlzRSkyC/RXOAI28SuHDNjNDTwtWFU2Q/FE/3olsJjzxkWEJESEwa30R2jz+C9oMkwW3nGY4rn7n4liRZYS/xI+e1Qo9zDqX4cQsWeOktn5yq2QKkuX0PhFGikPmprrIviYe8zIEgwh/PC6dyyIM4KfVHzcY6g0dagurdHAHi3+O8aMd53gTQXjQEMk6MUeduGpfpS+pr7Jh8D3upNsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PWIu+Gx1M3PYhGKFSGHDhIXXzxBCNNoeJl0Uo/5hAHU=; b=gWTIAaTyAWlEmVFpWdR3f4rdcppbi3z9EC06R7JpGDBl5lfUhLkMVJRCmW47J6hy8p3xiA9eSglmBAmCds18P3o0YEN/HW+u4qnyyfVDbZMvuMvlkHtIeIyOvTVtE5AoaF1dTOf8omNPbL1H/9dEPkBtrvlz3B80TRTGZ7Vfid6J0tAIpLMIMOGelc4OZwgJkROdDB0WqsIMGCQnLvIcTshfOEn6KJh457eEtQx6GFNaEhu/PRIkDWnJKuNAIWJZrSz87wAaQ5GbjdsSo4X796j0jtrKxzRZPgrwGDnPlFbRPF6RrDaO5Des2im5BEhuAn1BObprOT4bWiID9HCbtg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by HE1PR04MB3244.eurprd04.prod.outlook.com (2603:10a6:7:1c::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.11; Mon, 10 Jan 2022 09:08:51 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba%4]) with mapi id 15.20.4867.011; Mon, 10 Jan 2022 09:08:51 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Matthieu Baerts Subject: [PATCH mptcp-next v9 3/5] mptcp: clarify when options can be used Date: Mon, 10 Jan 2022 17:08:20 +0800 Message-ID: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR02CA0192.apcprd02.prod.outlook.com (2603:1096:201:21::28) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d77e7773-e397-44c3-6d78-08d9d418d194 X-MS-TrafficTypeDiagnostic: HE1PR04MB3244:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UtfsHW22fFkECHYXEx4LI+WMx20cAEEo/tXFj3E/FVjKa6dIRfbHb/NNgye8KM23qAkxC3UEUOgyAqoT+AYjL9lMUxkloMeCgDSLoMFtdVQooEB4KO+MSIdDZknpZGhjWPLoy/VMVfoqQFnfQ5L7Rc4QVz5uF8weFKvEwkcA9lhuFWlyoFmV/MKqhGheRLVNQyTGLMsMTfAvn9VTElecg0O4MdWmQqGKRbm4fKL7dOWsD6KchYkJ+Jm+ceRRvMpRrBQTNSw14Qaa6vhWiwZ0I71p/+PQKlzI14jOaPUX5GfwmxBiFloi4SeFCpbGdUUfp9SMDR/Q0vi6AArEDit6VPFiRiZmlqCBCO9Miv/Ty4iHzs4qmDK6dXWh9Dv2ancXszU+Sq71kxJWEQYR0pXCOnu/u99YhPDYhMW9PPkkNncGGxjEaQYa8KqXBWFNKHT+vRUhGkAX8n/eOWuMK95abhmW2vhBTb8Wlxqu4jCfZUOWBN9NJHxa/Gheqf6JLqFD54xRluiiDCjYCAjuF/aUrsz5LVAZ3jPMu40txag73zSL/hquWA4HZentTQ7zyp/OPdzCnR64hdhewtOld+9zij1GQRVh6pbNRO9GHoeVgGnpCEOW9K6WqerIa974dlU7gZ5g6PjRbIFAzD4/i5pkMA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6486002)(66556008)(6666004)(316002)(6916009)(508600001)(83380400001)(2906002)(26005)(186003)(55236004)(38100700002)(6512007)(5660300002)(2616005)(66476007)(44832011)(4326008)(66946007)(6506007)(8936002)(86362001)(36756003)(8676002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ccLKLR6J4hcOw4NGCFZhc5UZkjm8Ay+Bzvmtwi32IcgI0Tx6HshimeIoSg6g?= =?us-ascii?Q?mWHkXgW1lkHkPXl8lYg+4mileEoaOrrEr2UcdKZfoROeV156D8XACmcktmaj?= =?us-ascii?Q?6i2qjSNRSzTzaqY25X2mqH44v7CgyvWRChrG4ijYfdk9Q+BqFomWhRcWOiUQ?= =?us-ascii?Q?GsnB0Jcw894TR9yAFaN7JKB18NbYBEmRec83SxMQ4Y7K5zUx84ybzGjMdEZb?= =?us-ascii?Q?IUjEb2rROV4D3GL9Bt2h9CQdenx7lc5pXk+N+Vd9p2nzbsSdlhSDr8nGBkli?= =?us-ascii?Q?EWDfXTLJOfLPAivRvDPbhi7eGXRu0c64r3GLFDQ5bpifasmpl2AWa5O8k4/6?= =?us-ascii?Q?A18CU8SiPtsdNU0frIU8fdJWaBmFYoagrT0ztoJ/kjhYqn/KM1NcK4yQzo2e?= =?us-ascii?Q?R+RvaAtKrZekfiId80tMiVXJilb++J/dkLx3Z3iSEis6VBuOoPD5KNz8CxoF?= =?us-ascii?Q?izr3PpUyWeW2npSUzocFAYNC9PoEd0KOWytnuWYq2/UwscI8ghEFRIrHTx0r?= =?us-ascii?Q?imSNH8LowA4GZDntK5x44cqjxeF2C66byFvFvJYibK75/pH+kR7Zli2T8CZt?= =?us-ascii?Q?WLrdfufHCwaHqUa9zj0yLyvW0beO1wHhSpNfapFkP1X2OIJQhwxvlGIQ0unG?= =?us-ascii?Q?AvDx6E2+VaIHkVLl5fNe05qhkE2TZO4YdWdCuKovqHdSJOVTvC4cChxrlmGw?= =?us-ascii?Q?/Z4sMu81uuLRaMOD4rMn3omt9GKGuvrZe9j5fZTCg7eFo7CdCScCuf/0yOgB?= =?us-ascii?Q?sX0aocUbKfK24h7m8xqfVfHQ0F0qSGsFUhnaLMj7Q1XzsiHV5px5iVJjAShD?= =?us-ascii?Q?FumKCntOJ1pJgfaY3ZQZKZLTFsFS5R2JOcbW6paC8CriXLRRHRBmRKbLII4g?= =?us-ascii?Q?DxKrxVteagcFlWWMdYVHiSy5edAJqZXEPokCYce410Sosot3rlOStgvKReqa?= =?us-ascii?Q?qe6o4N/hESi5iU3OG0i/QL/fdRJqGksb+OZookk/0/03SQm19SygXfBEzeyO?= =?us-ascii?Q?jOQjcDNjuOy0qT9awwlg9tmiSQb+ZoC0Xl1Kq2bnWuAs/etccvRuytqMDgZi?= =?us-ascii?Q?CzguffsV9odurig7LbZRmW8Y7uikhw1RQ3sz9R2JW7m1GmEIQxwsJ6Iw0a82?= =?us-ascii?Q?vHBaei3WuC654Cud93hX7j+NBNwBlXKk8DFggqQAwYtl0dQ9IgVUD07jwvpH?= =?us-ascii?Q?XGUHFiOpmCbBfGznyiK1tUP0O80TUHBmOfZXPcBv+PMQtuXAMRAkcXE51p6d?= =?us-ascii?Q?hGc6+TJF8R21bOKyg7VfBG2N+jTzlzZ/NB2UKHSFW1G4OWIKbF2yrZfZKZ0b?= =?us-ascii?Q?e6op2Pb+absrsCwDfQ8G49Ba5KGnG0wIk2lh8x8VcwNJgg+JgTmqnxab9f4E?= =?us-ascii?Q?jViAXse6YC4+to3//8JmzkmfNf3fFL8UoOfEt88UZyFrCKj8JAK8CC7TjWyR?= =?us-ascii?Q?Z3zYxyge9ExHqKYYFFlA+NKm22As426zSONQtz3td//TYXZ/JRJc8Oa/qETl?= =?us-ascii?Q?WuqCoSCeb82gKhwIzXVtqJwsTbC6x54+cRWfGc4ggnr4WPhqvbRs3v7MaAp0?= =?us-ascii?Q?/NxrFV3uTsx4QYjzQuGCAm6sb+Kx+RMenJR+ZL/J7eLbZXG+ekyoiR3VMogG?= =?us-ascii?Q?19CdldA2uYV5H1c8rz1wXWc=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: d77e7773-e397-44c3-6d78-08d9d418d194 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2022 09:08:51.0886 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hY+FZ/uuMqkDylkj23SRcuuSQqDo0h6LZyT/KGVgNKf6m1cYv84FLJjEuvrSUVqNw3zR7iETVS3Psy947C6Aaw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR04MB3244 Content-Type: text/plain; charset="utf-8" From: Matthieu Baerts RFC8684 doesn't seem to clearly specify which MPTCP options can be used together. Some options are mutually exclusive -- e.g. MP_CAPABLE and MP_JOIN --, some can be used together -- e.g. DSS + MP_PRIO --, some can but we prefer not to -- e.g. DSS + ADD_ADDR -- and some have to be used together at some points -- e.g. MP_FAIL and DSS. We need to clarify this as a base before allowing other modifications. For example, does it make sense to send a RM_ADDR with an MPC or MPJ? This remains open for possible future discussions. Signed-off-by: Matthieu Baerts Reviewed-by: Mat Martineau --- v9: - Change 'ADD+RM' from 'C' to 'P'. --- net/mptcp/options.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/net/mptcp/options.c b/net/mptcp/options.c index 491362d8dcda..bc2beeb6b5a0 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -1267,8 +1267,27 @@ void mptcp_write_options(__be32 *ptr, const struct t= cp_sock *tp, const struct sock *ssk =3D (const struct sock *)tp; struct mptcp_subflow_context *subflow; =20 - /* DSS, MPC, MPJ, ADD_ADDR, FASTCLOSE and RST are mutually exclusive, - * see mptcp_established_options*() + /* Which options can be used together? + * + * X: mutually exclusive + * O: often used together + * C: can be used together in some cases + * P: could be used together but we prefer not to (optimisations) + * + * Opt: | MPC | MPJ | DSS | ADD | RM | PRIO | FAIL | FC | + * ------|------|------|------|------|------|------|------|------| + * MPC |------|------|------|------|------|------|------|------| + * MPJ | X |------|------|------|------|------|------|------| + * DSS | X | X |------|------|------|------|------|------| + * ADD | X | X | P |------|------|------|------|------| + * RM | C | C | C | P |------|------|------|------| + * PRIO | X | C | C | C | C |------|------|------| + * FAIL | X | X | C | X | X | X |------|------| + * FC | X | X | X | X | X | X | X |------| + * RST | X | X | X | X | X | X | O | O | + * ------|------|------|------|------|------|------|------|------| + * + * The same applies in mptcp_established_options() function. */ if (likely(OPTION_MPTCP_DSS & opts->suboptions)) { struct mptcp_ext *mpext =3D &opts->ext_copy; --=20 2.31.1 From nobody Sat Apr 27 02:13:12 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6638:38c:0:0:0:0 with SMTP id y12csp2454516jap; Mon, 10 Jan 2022 01:09:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJxLin15qeurKLWpbuOUI0RmOQRLdtpZOhohbCDrOJe2T/dWY11bZlxgr03t1Pvt2YPSCQZQ X-Received: by 2002:a05:6214:1c8a:: with SMTP id ib10mr52193541qvb.12.1641805746666; Mon, 10 Jan 2022 01:09:06 -0800 (PST) Return-Path: Received: from ewr.edge.kernel.org (ewr.edge.kernel.org. [2604:1380:1:3600::1]) by mx.google.com with ESMTPS id r14si870096qta.163.2022.01.10.01.09.06 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jan 2022 01:09:06 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3012-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1:3600::1 as permitted sender) client-ip=2604:1380:1:3600::1; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=mimecast20200619 header.b=jyfSjyCJ; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3012-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1:3600::1 as permitted sender) smtp.mailfrom="mptcp+bounces-3012-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=suse.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ewr.edge.kernel.org (Postfix) with ESMTPS id 657231C0BDE for ; Mon, 10 Jan 2022 09:09:06 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 348022CA3; Mon, 10 Jan 2022 09:09:05 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0E36B2C9D for ; Mon, 10 Jan 2022 09:09:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1641805742; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kgyBQ0ANWOK0TpD2uoNqRap7NHyvB6G9ii3v7UegqZY=; b=jyfSjyCJ7FydqQHl0OQtyIagWH7clY54TN0pC4+aZ6RldT42XuMJFTsxoAzDMzJ/INAzjh 78ZkjqTgFggmfseIfpxOkVNnGyWdIjewUgKMvHF+XC0jlmamW8snzIfna/95YBiLlQVFfN MXlSk3I5kf+JXpSG1VAfXtQNPsgn05Q= Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-ve1eur03lp2053.outbound.protection.outlook.com [104.47.9.53]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-41-ZuPOrf4XNI65puqW9mLmgA-1; Mon, 10 Jan 2022 10:09:01 +0100 X-MC-Unique: ZuPOrf4XNI65puqW9mLmgA-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JAg5ySuyoa3eT/NbSxmSUh+JvPgPnZfdLJ3sNuaxkOXdb1I8oJWzNGgJshxVbWQNvbVh6HPfL3h0tOEUc+A+V5LrQXvVbFhcqs0ESbbWrkSg2owXCPNb0u4KQP8uMF3qyQDji6LSMSE0GTtJQS/NaoNvu0/qu35tWDOaH7bDDJt0Ndf71s1gkx9utkDjOKZcfEwEsfVT4+SiqtLVExF+74mI/w3sOAS4eI7s2ih8MqEeSLk/aICFgtiJOVjcTh11sPHGHtBSyC80t/pM7wwdR9JIjEDumZlY7v+suWv1gN1AojXcjLiplrgNio1Zo1GmzFew/4IyXxegW7OxnbWg6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OcDQCJQEpulJZmatV2IeMjvRd2MTwrG2y9qomyPmoHs=; b=liRjJ664habeX0TUX0Gm5XWCleXBI6ejay9CZe0wctJMa0gGptHg3BAzOwfwrDTaZ+MGECB9jM1Pe42RymmURTbromKJoUjg+q0c3gJdcZUzl41agOZSWUdxjPYVERPepFgiiDBjq3Mo+VzJhgXpGrdAUd0QNQ35pT1P+0LIgGlDqsO8a7/yaIhtsHkuleO08OMkBgZv77xGkcHihm6C7oruylQVePWPKJuykQVOgP2i1dTfXlWeHY+RMGu7PfVujh3oRoSoBtm2rf83wNLpMtVQ3M195nWtgbbVmcYiIwwuVGtDdkDWyxjn511p/+bcqnk6My9CN40jSKlyZvC7pw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by HE1PR0402MB3546.eurprd04.prod.outlook.com (2603:10a6:7:85::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.11; Mon, 10 Jan 2022 09:08:58 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba%4]) with mapi id 15.20.4867.011; Mon, 10 Jan 2022 09:08:58 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang , Matthieu Baerts Subject: [PATCH mptcp-next v9 4/5] mptcp: print out reset infos of MP_RST Date: Mon, 10 Jan 2022 17:08:21 +0800 Message-ID: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR02CA0188.apcprd02.prod.outlook.com (2603:1096:201:21::24) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6c42f6af-3a34-4b17-fe4d-08d9d418d5c9 X-MS-TrafficTypeDiagnostic: HE1PR0402MB3546:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1775; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TAUOxlOTBeK2pZL/g7zj4kHudbR4Ndo6McHZ3bWEWhxL/JBHEZXoe9vF0wdiSMAWHlzANjKwQTpFWN3tIoHyxHVOFg0iqugJCyAKhqTi+0O1LW89VDT/UYR4B6VhfmHrbVTygVLbD/8ZTMmbge7Zsu7iCbqXpvy4BpdKIk+smuXp8hexIQcXAqHbGUwl1cXC1XPCivIFp6759Tn7qtO1Lo1Z3BsWqaqvA+rv2+I7oyZs9YzDL6BdSp6TeVZqyKwcu2wGG/XjCYkD2ISkofZQmOcTklwRNbaDf1ualDO1v6+7IR4nVHBw3yLL9IDg73v8TSzGgIwXK7A7aY1KqcKkvqGkSvMlZswK0rxcN5a99VJgXLxJ2pdPWhYuE+1rkdndErazk5rWftyoLt5ubY64ntQV+3NSX3UVbC84IdiPvqPvQIxgIU4sTyCgN81dAdjbcamcO/0sQPIB3JQB1wtXpHLpLy09fjJGhd8VZmQoZ0DCNS9lKdQt3ELXndCOxGY/z++uRStg8MFMu3q5lo8gvTMM2pJIvZWA72PmlOt59vWbBZiC/TPW+Sf28oQyrIe7N/+WaW7p/44WHZn+98SI9hQOYffMgYXj6eRjNFfrWCc2Xg4TU+htTP3h9ePTEVTHbAcO3McOyaD6Rv5eC7qIiA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(8676002)(26005)(55236004)(5660300002)(508600001)(186003)(54906003)(2906002)(6666004)(6916009)(36756003)(6506007)(316002)(6512007)(86362001)(6486002)(4326008)(44832011)(8936002)(4744005)(2616005)(66946007)(66556008)(66476007)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?HwS3OLGlwFxfnDrdQu3tMOmGVIi5Mq6WoyY+54+E1liPbUDYeQ3/JmyVILhV?= =?us-ascii?Q?nJTCDykwkBRedpq3xEubZTtI13yxWIXNm/zYnxLxjW9ja5NfvZAC7Ak2pDLE?= =?us-ascii?Q?y7Q+O9Xt/LaxXxcu+RwY8SzPEiIdqPwCyCQiMBAmTiHODfsvLdrV07anZPA5?= =?us-ascii?Q?VQf4O/aBP4NBysMl37IHf8Nha7RjzBaDPX3beNTldaYhoIg3ehJeBQOqeQaV?= =?us-ascii?Q?nZ66qrAq0pnGAys9arJXAAVKky7hCHzKQSh0NejJuceL0NIvzXZLlCOIAxBA?= =?us-ascii?Q?yj8mFcGv7JF3RgK0mxSuTps26JMfLKm5MBIhMwSetF1xuZHW4yusoLGATThA?= =?us-ascii?Q?pe7pHdUojOf1T/iqfPYQNeZ2CUQupni/IHpEjlOr7rHnI8xPHTK6EKFkOH2M?= =?us-ascii?Q?KInvxV8hfDIx4nO2gN8Vsw4qBL8jsM4J4Ljw/rMsIjiJ6xOLc0aQ2PBkl9pm?= =?us-ascii?Q?pxtVKtGchINa7NqyEIV0x7OBp1SC3ycubUeq6mItucbqaBuEmWxuSS51KwTE?= =?us-ascii?Q?WH6oI1AThSwSqlt602CX1hzeFh5LP6oC5C1FOMOPlMF9bIKxOWiFm2xtRjlI?= =?us-ascii?Q?W5wLEQLBdzg+mG3wyqBXtAb1y4oP6Ky823I3+Mkl72K7cCS0BieuM/OFANB7?= =?us-ascii?Q?OhjfvIpTVt60TFAqF30GT7Duv+sHUOEAcmUbw4W/m51aey62C9TF2wlhORin?= =?us-ascii?Q?CA+0ZVAohNs7clk79J+e4OzRvmAxebzdu9prCRo1D4L5qDVSKjz8B8ARWBZk?= =?us-ascii?Q?+7V+/69bGjalZwTByOgONq7luNM/kW7/Thk5+bImJ60/JhCRwUhOfAoWn9GO?= =?us-ascii?Q?9ABlxJs/fy4Xr0Og8AQ0Ej16JSdbVMhgsPaTvD0MymTNVFEmeo3ZJVryag9k?= =?us-ascii?Q?eICPV390L9ksSa+YswBD/Gc12AiNTVWW//nPaDtP5yTnd48Ut05z2JUlGv4z?= =?us-ascii?Q?ICsKVXwOltKBNwcbwxgHvhQfsBM7OvmynEeJY4o/YEdiChTP+DZfrBaLMF63?= =?us-ascii?Q?MvMK7kuD+P8BfykPpShEt/ajldDER7cuBxaqRXxMhFN7VcHw8fJUSv2Q1OpB?= =?us-ascii?Q?WYZ+hnqWaBf9E+slOZAfrfiYIV/6ZveL5l0pk5pm5+9YTjmwGnYvsMukze1Q?= =?us-ascii?Q?8WArodc53L5Mo1z//QB0QXgRgEo5GhqUClafvogAqVFwdVi9LAzZx0unsMhM?= =?us-ascii?Q?SMBQlRiKgtf3vkH75IvTp+MQWTeBsRXhazekrioVyeDhI1zWiEweuo4wEL5W?= =?us-ascii?Q?BCP94FiqtqNYfEyfTI7jb7a2Eeo3diDcODWmcA/06DItWzAQ/CESar/YyGvF?= =?us-ascii?Q?Qs7kQi0WafptBPWCHXQrCp88625ZJ2M/86Xx3LLmC70gh9m0/7lHo85dvfKj?= =?us-ascii?Q?LXZBS+EzWG7rsdX9ejF2CtT6LUays3yExeTpnkPda191z4+Pf0TVo/WvyyKM?= =?us-ascii?Q?f/zNV7L3s7t9mcyULXbcZYuyOwHGuqCZZ6aaes7l7O5iFChSFUeNh1Ol8RhT?= =?us-ascii?Q?WMTA+ElfH5ri1pNY/9TcPNyP575Lxm9IWIlhRupi7dxkMZlqljHcYpJZl1dY?= =?us-ascii?Q?Qq4fBuudlK4+iL3oK8Vyg/L5sAOoFSRTpsfiqGNAVuVVGPK361NSFvFpIUN1?= =?us-ascii?Q?XAWYEghnjg6V4svFM7DBw88=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6c42f6af-3a34-4b17-fe4d-08d9d418d5c9 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2022 09:08:58.4473 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VrRG2RVPyZ0rj1vS2ylFUVrwJB9LgtajhKoi/3WHGfCRhQuo1mOXS1Si10xH6WNHRK+51AeWAHFW2GjuQrzpew== X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0402MB3546 Content-Type: text/plain; charset="utf-8" This patch printed out the reset infos, reset_transient and reset_reason, of MP_RST in mptcp_parse_option() to show that MP_RST is received. Signed-off-by: Geliang Tang Signed-off-by: Matthieu Baerts Reviewed-by: Mat Martineau --- net/mptcp/options.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/mptcp/options.c b/net/mptcp/options.c index bc2beeb6b5a0..0d0d2eb8c8ca 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -336,6 +336,8 @@ static void mptcp_parse_option(const struct sk_buff *sk= b, flags =3D *ptr++; mp_opt->reset_transient =3D flags & MPTCP_RST_TRANSIENT; mp_opt->reset_reason =3D *ptr; + pr_debug("MP_RST: transient=3D%u reason=3D%u", + mp_opt->reset_transient, mp_opt->reset_reason); break; =20 case MPTCPOPT_MP_FAIL: --=20 2.31.1 From nobody Sat Apr 27 02:13:12 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6638:38c:0:0:0:0 with SMTP id y12csp2454585jap; Mon, 10 Jan 2022 01:09:13 -0800 (PST) X-Google-Smtp-Source: ABdhPJwuABo/LfPlf3JAGXcXo4J0WqQzN6jawixR1GnpgofF++nI4OwrMShK8DPaByTSoXzYc79L X-Received: by 2002:a63:1cd:: with SMTP id 196mr20268764pgb.152.1641805752659; Mon, 10 Jan 2022 01:09:12 -0800 (PST) Return-Path: Received: from sjc.edge.kernel.org (sjc.edge.kernel.org. [2604:1380:1000:8100::1]) by mx.google.com with ESMTPS id q14si7967992plh.261.2022.01.10.01.09.12 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jan 2022 01:09:12 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3013-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) client-ip=2604:1380:1000:8100::1; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=mimecast20200619 header.b=hEBsDvL9; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3013-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) smtp.mailfrom="mptcp+bounces-3013-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=suse.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sjc.edge.kernel.org (Postfix) with ESMTPS id EE6503E0F77 for ; Mon, 10 Jan 2022 09:09:11 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id C6D642CA3; Mon, 10 Jan 2022 09:09:10 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 422A42C9D for ; Mon, 10 Jan 2022 09:09:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1641805747; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=J1vKNp20D5xsSyzcRompJ4fCvOu3yratA9ldE18MGwM=; b=hEBsDvL9fBSsOBueRlJGgk0N5JZhsiM1IICW6dljd8K4Q7cFQzw1FxhYHJrUNno10emP+j AhjFqfd374QMP7IowfTy5zAKv7Pnarg15xzGrNz9/RFGS+zgckmSSwUiwkQyajIQktoOg4 3zwgoeKrJqqXMPil7FkZE2hKXIUM4MI= Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-15-lSTnY0W3MP-E4o5VvJfQpQ-1; Mon, 10 Jan 2022 10:09:06 +0100 X-MC-Unique: lSTnY0W3MP-E4o5VvJfQpQ-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JXFqxiUKSPaIGy6LivLuWAouGRclCZeOQCpWSwtyzVA41mklzgLKOVxAkLlcxGZxPlF+kxxzH09LiYdL63nJas5qU2kjmJ5ujoSkPNJdpb+KuTN3UtpzfcZyD4hustht3V11G53/qI70l+VXCnvKuFGx0qTDQY57c0it6XayW7OmXJdRG2NMOQ4HOR/hQ5FB8V2m4vtbLRYD1YBuwfVty/A1FkEwFU0oXwzKhFMK9R9KrO18ZfLb3XxfdllGnW0kbdUIxFpp8Zmk9XdqNMuwOIKgM2yVj/QuiawvBBJXHGsf5YxXt+StnVoKpWnDQ0azNIDkeYmCBtYu78xvR7H/Hw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=E1xsVIKW6ylKdliruqpYemV6LlcvQANHsIga8GmvKDs=; b=iJLP0wjblqL/x+nGuA5yKe6fj/DP2OXdb6VU+oFoUH8ndjK+u9sVAHONOGTtdcmtxVPMOwOsjxX8qRhj0HBX7rBUob7T8hFap2tI1XAugGn4G0VQcgBS9rH19WRG4/WJ+hMHrYSHMcpi7qf7p6lMQyBU/iUoxoQx43nM+t+f8AaPjqSkL4byW6sju4reUoveJsoxRfq0HMtHAFe30fGPp6spCiMF+SHnsmxDPNNVLFL3qM7+elJjgfEc5b7l9avmX5cay9xGV846py/Uokd3cjfjeL0swHEXtXE9iyL58B5Kde2aY1ub/q40YGyzh5n3AgPaVMLAJWNA/NyECzYGZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) by HE1PR0401MB2345.eurprd04.prod.outlook.com (2603:10a6:3:1e::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.11; Mon, 10 Jan 2022 09:09:05 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b5bf:e1b5:42fd:4dba%4]) with mapi id 15.20.4867.011; Mon, 10 Jan 2022 09:09:05 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang , Davide Caratti , Matthieu Baerts Subject: [PATCH mptcp-next v9 5/5] selftests: mptcp: add mp_fail testcases Date: Mon, 10 Jan 2022 17:08:22 +0800 Message-ID: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR06CA0007.apcprd06.prod.outlook.com (2603:1096:202:2e::19) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 59cdf77c-fa33-4145-b820-08d9d418d9e7 X-MS-TrafficTypeDiagnostic: HE1PR0401MB2345:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1060; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZlDE86p9Z4jTSZ/htP/2vkaQeUIfRm1IvsDhTXBR7lK7thNyyABhhMYvpYEmdQBTvZQuikGit3aDJSd0x6cDtw4nDP1PkNpDv1S94pj4nxbRqle/a9f2Q5yGl1OVz14NXsPr2cSozqcEDNUIGRgEm+P3qlAdzU1ebRW0SNSzwtQy66op8AqQVtXLhH56DD6npoIVtWB3/b4vqrPbp1cQH0+qlgrHx/MgMhCUv3q1naF+fU8Z0jMhIyORqMDUAIQtIemMSDzWObQ20gU8iOnrFaY9CnEtfYUW3u5l2xycMoe6cz3MAHHZu/JIvCRYrRM4H2+pEyXALf4ndGrdf5X/fT2L1E7pEKDhMQ85BnOQ1td03WCi5RT85FRpoGdhjsIPaQykUBG7DDteaWtC+Ch3Q4VxGmzJuBH+3zUmUqwvi1X9eXpTmwzgBJwZPQfpDSq/CbwJR7bg/v6QhhJAA1C69WLPXJK/M9NuxRij1+6TBh8GVIWr5q5TM02dhLPRLqKvZO9UQGC4FvGSrgBwBDNXjyMkVKQqcNi3sjfHp57SNRUbk6QBBJNR+tj7429G8LDg3mHI0EipFNKWFEGi3HulSIKrn6Cx+0W3E8uYZHQrmns+DlpBB3R3jQJ48J+f/thNZnsDzGymhRGF2qNxkArLZA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR0402MB3497.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6666004)(6916009)(26005)(508600001)(86362001)(6506007)(66574015)(55236004)(2906002)(83380400001)(316002)(54906003)(5660300002)(186003)(38100700002)(8936002)(8676002)(2616005)(66946007)(66476007)(66556008)(36756003)(6512007)(6486002)(4326008)(44832011);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CD/xaBru9vrMEZZFzG/PfZ+PD2Dwod6e/al9I7XgmiBB+mivcU22NklV6tQF?= =?us-ascii?Q?63kHykIt3zS3bs9epj9RTa6BTIO3kP2DHCeK/0/5XIXQw3u66dDLG/YdWPjR?= =?us-ascii?Q?iYKXudSrUcOKScy06A81kojicQI7hN1tujlBnnHL2/qlPkldnUQqnMnnsTkK?= =?us-ascii?Q?LHxSZ/La5VZUtAV8CQJBbEAcohtT8SjOlPYzzfiIyeuzyun6cuyuUBIU6ZsD?= =?us-ascii?Q?Aa4JjP6w+3eYtk2XqaO35iTNm9vxysxFxHrTS2iX3uxj2lMTtCwStR7fqmZR?= =?us-ascii?Q?tKkMvI/LICGwGDp4Jicce9f7GtKqsMZ/IewxxD2l5UHoqy2oBLJRzjNUlZc9?= =?us-ascii?Q?o+84DIZSP83Ci84pkE1F8LY8iDWKhhV/Ht9fcbM63RK9NQ6CbhaED1K8im4A?= =?us-ascii?Q?HqPY7UXcf2wtUnvqewS++lqp0B+nL/VTud3tTEtVt+Its3vOAaRY41IC84A/?= =?us-ascii?Q?gtq1xM5jGAhF7Kck2vJoJcFmbIFhtKZlx+IpV5/OVSn9tQ4SLbG0KuKzdtRp?= =?us-ascii?Q?yyNS4QX3AdaHSLGc4ARnPdkzLfkCmsrFb5NMhXtxzRmB2e6wKQUDZ5vcF1ec?= =?us-ascii?Q?xyYUJA/XUTfSmFqLcPd2MZ4c/cxu1Q5OXYgLJ1WuKmLO+caNKuanPBDuG0xg?= =?us-ascii?Q?i/jDGmgAMsV0wTIi5eWcauKX7d5snXkBMGB5rW0xpl+uYgd9ybvzj5wnqtJX?= =?us-ascii?Q?7G/ajwVa5MCbZAD0SULs8Y7rknAJHF69CnRYB1blfvvonkXd9Kc4lez4XHyZ?= =?us-ascii?Q?v+UQ3fNTwc9hlZclWpAM713jAikoQ7t3qWOqRrF7sm478XSZmYcwOiJUrIy+?= =?us-ascii?Q?uT/1XNmSaQ1jLKz8Jjj7qrluefHHUyw9tmFBKr9ZKNZGvVwep7GuREW0dg/Y?= =?us-ascii?Q?PCN2xNMvCteWweELaC8Ld+jvrpn5xp831CYAFVfysZvKNrrA+sULOxZ8FBCM?= =?us-ascii?Q?9AyvU9yMG90DiUAqFsecZzUpEjpDMRxae8xEUrHntqTPt04IcZLHRLHtLwOn?= =?us-ascii?Q?305SwlXtnoHEfqkRwIxNBWMxfPzsXShHhnQpRafwJksw05wFI/M1uXn8GUx1?= =?us-ascii?Q?H2HoFQhQfoFUBriFrhDK3NY2gAIJ9lxz4KYZm/cRNFYXrP3+Q5wpbl+UTdDL?= =?us-ascii?Q?9h4KTmswhAYG+GG8uOohLC9jHgnwENSFMa2ObaECOSOH8bwrjcl9ujLkkOjy?= =?us-ascii?Q?891CTOFcvZm6PBQWhktGJ92f+uVfhMVKCguxXIOO1aHCSzzCdyNsWohfRwnf?= =?us-ascii?Q?X7m27JXWwwvDy8ydng1lmRdFABnLJ5F6JN+nu2WNoQIIWdGwr2VcmkagUOYy?= =?us-ascii?Q?AwBJs+gIrRpMkm2sOkiSGGoMAWow6l5hK5xvn4EQcEuHfNFDvXqMiXg0gtTE?= =?us-ascii?Q?jquVB2o9ieqOKOU9lEk5KnLxRKb1yRAHnT0kSfGfkX/DXTe5/M2ioOfVO70f?= =?us-ascii?Q?F/GlNgdDP0abQ1ZWpktbmsvRH5ej0CmthkeVXfyyB7TE1V1lW92suHxaGpZC?= =?us-ascii?Q?ypgX4qamK53LZeQQtcjd7azEaCXiqkhlWTbOydm/1/1c5OVfzWRZotfbMRl7?= =?us-ascii?Q?xrY/o8D2k8a/piwLA+z6sylZTCVT4Oh8QpKDFcG9+T5PqiYn3V8QIATGoM9n?= =?us-ascii?Q?TIOWBQRu0ifE73ggcTLRbzs=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 59cdf77c-fa33-4145-b820-08d9d418d9e7 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2022 09:09:05.1499 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: MKv/sR9MqWD/uyxI39AqC6r1S13+rVxrXGuraIiSkIk3Stvo6jPlMbL7L3Lv218sY93pX5m8mIF/JPvuVFYAYQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2345 Content-Type: text/plain; charset="utf-8" Added the test cases for MP_FAIL, use 'tc' command to trigger the checksum failure. Suggested-by: Davide Caratti Co-developed-by: Matthieu Baerts Signed-off-by: Matthieu Baerts Signed-off-by: Geliang Tang Reviewed-by: Mat Martineau --- tools/testing/selftests/net/mptcp/config | 5 + .../testing/selftests/net/mptcp/mptcp_join.sh | 111 ++++++++++++++++-- 2 files changed, 107 insertions(+), 9 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/config b/tools/testing/selft= ests/net/mptcp/config index d36b7da5082a..26955abe49f0 100644 --- a/tools/testing/selftests/net/mptcp/config +++ b/tools/testing/selftests/net/mptcp/config @@ -19,3 +19,8 @@ CONFIG_IP_ADVANCED_ROUTER=3Dy CONFIG_IP_MULTIPLE_TABLES=3Dy CONFIG_IP_NF_TARGET_REJECT=3Dm CONFIG_IPV6_MULTIPLE_TABLES=3Dy +CONFIG_NET_ACT_CSUM=3Dm +CONFIG_NET_ACT_PEDIT=3Dm +CONFIG_NET_CLS_ACT=3Dy +CONFIG_NET_CLS_FLOWER=3Dm +CONFIG_NET_SCH_INGRESS=3Dm diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index e48ce23d2386..535baa3c01e7 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -16,6 +16,7 @@ mptcp_connect=3D"" capture=3D0 checksum=3D0 do_all_tests=3D1 +nr_fail=3D0 =20 TEST_COUNT=3D0 =20 @@ -58,6 +59,8 @@ init() fi done =20 + validate_checksum=3D$checksum + # ns1 ns2 # ns1eth1 ns2eth1 # ns1eth2 ns2eth2 @@ -161,6 +164,45 @@ reset_with_allow_join_id0() ip netns exec $ns2 sysctl -q net.mptcp.allow_join_initial_addr_port=3D$ns= 2_enable } =20 +# Modify TCP payload without corrupting the TCP packet +# +# This rule inverts a 32-bit word at byte offset 148 for all TCP ACK +# packets carrying enough data. +# Once it is done, the TCP Checksum field is updated so the packet +# is still considered as valid at the TCP level. +# But because the MPTCP checksum, covering the TCP options and data, +# has not been updated, we will detect the modification and emit an +# MP_FAIL: what we want to validate here. +# +# Please note that this rule will produce this pr_info() message for +# each TCP ACK packets not carrying enough data: +# +# tc action pedit offset 162 out of bounds +# +# But this should be limited to a very few numbers of packets as we +# restrict this rule to outgoing TCP traffic with only the ACK flag +# + except the 3rd ACK, only packets carrying data should be seen in +# this direction. +reset_with_fail() +{ + reset + + ip netns exec $ns1 sysctl -q net.mptcp.checksum_enabled=3D1 + ip netns exec $ns2 sysctl -q net.mptcp.checksum_enabled=3D1 + + validate_checksum=3D1 + nr_fail=3D0 + i=3D"$1" + + tc -n $ns2 qdisc add dev ns2eth$i clsact + tc -n $ns2 filter add dev ns2eth$i egress \ + protocol ip prio 1000 \ + flower ip_proto tcp tcp_flags 0x10/0xff \ + action pedit munge offset 148 u32 invert \ + pipe csum tcp \ + index 100 +} + ip -Version > /dev/null 2>&1 if [ $? -ne 0 ];then echo "SKIP: Could not run test without ip tool" @@ -179,6 +221,12 @@ if [ $? -ne 0 ];then exit $ksft_skip fi =20 +jq -V > /dev/null 2>&1 +if [ $? -ne 0 ];then + echo "SKIP: Could not run all tests without jq tool" + exit $ksft_skip +fi + print_file_err() { ls -l "$1" 1>&2 @@ -233,6 +281,21 @@ link_failure() done } =20 +get_nr_fail() +{ + i=3D"$1" + + local action=3D$(tc -n $ns2 -j -s action show action pedit index 100) + local packets=3D$(echo $action | jq '.[1].actions[0].stats.packets') + local overlimits=3D$(echo $action | jq '.[1].actions[0].stats.overlimits') + + let pkt=3D$packets-$overlimits + if [ $pkt -gt 0 ]; then + nr_fail=3D1 + fi + tc -n $ns2 qdisc del dev ns2eth$i clsact +} + # $1: IP address is_v6() { @@ -589,6 +652,8 @@ dump_stats() chk_csum_nr() { local msg=3D${1:-""} + local csum_ns1=3D${2:-0} + local csum_ns2=3D${3:-0} local count local dump_stats =20 @@ -600,8 +665,8 @@ chk_csum_nr() printf " %-36s %s" "$msg" "sum" count=3D`ip netns exec $ns1 nstat -as | grep MPTcpExtDataCsumErr | awk '{= print $2}'` [ -z "$count" ] && count=3D0 - if [ "$count" !=3D 0 ]; then - echo "[fail] got $count data checksum error[s] expected 0" + if [ "$count" !=3D $csum_ns1 ]; then + echo "[fail] got $count data checksum error[s] expected $csum_ns1" ret=3D1 dump_stats=3D1 else @@ -610,8 +675,8 @@ chk_csum_nr() echo -n " - csum " count=3D`ip netns exec $ns2 nstat -as | grep MPTcpExtDataCsumErr | awk '{= print $2}'` [ -z "$count" ] && count=3D0 - if [ "$count" !=3D 0 ]; then - echo "[fail] got $count data checksum error[s] expected 0" + if [ "$count" !=3D $csum_ns2 ]; then + echo "[fail] got $count data checksum error[s] expected $csum_ns2" ret=3D1 dump_stats=3D1 else @@ -690,6 +755,8 @@ chk_join_nr() local syn_nr=3D$2 local syn_ack_nr=3D$3 local ack_nr=3D$4 + local fail_nr=3D${5:-0} + local infi_nr=3D${6:-0} local count local dump_stats =20 @@ -726,10 +793,10 @@ chk_join_nr() echo "[ ok ]" fi [ "${dump_stats}" =3D 1 ] && dump_stats - if [ $checksum -eq 1 ]; then - chk_csum_nr - chk_fail_nr 0 0 - chk_infi_nr 0 0 + if [ $validate_checksum -eq 1 ]; then + chk_csum_nr "" $fail_nr + chk_fail_nr $fail_nr $fail_nr + chk_infi_nr $infi_nr $infi_nr fi } =20 @@ -1985,6 +2052,27 @@ userspace_tests() chk_rm_nr 0 0 } =20 +fail_tests() +{ + # multiple subflows + reset_with_fail 2 + ip netns exec $ns1 ./pm_nl_ctl limits 0 2 + ip netns exec $ns2 ./pm_nl_ctl limits 0 2 + ip netns exec $ns2 ./pm_nl_ctl add 10.0.3.2 dev ns2eth3 flags subflow + ip netns exec $ns2 ./pm_nl_ctl add 10.0.2.2 dev ns2eth2 flags subflow + run_tests $ns1 $ns2 10.0.1.1 2 + get_nr_fail 2 + chk_join_nr "$nr_fail MP_FAIL, multiple subflows" 2 2 2 $nr_fail + + # single subflow + reset_with_fail 1 + ip netns exec $ns1 ./pm_nl_ctl limits 0 2 + ip netns exec $ns2 ./pm_nl_ctl limits 0 2 + run_tests $ns1 $ns2 10.0.1.1 2 + get_nr_fail 1 + chk_join_nr "$nr_fail MP_FAIL, single subflow" 0 0 0 $nr_fail $nr_fail +} + all_tests() { subflows_tests @@ -2003,6 +2091,7 @@ all_tests() deny_join_id0_tests fullmesh_tests userspace_tests + fail_tests } =20 usage() @@ -2024,6 +2113,7 @@ usage() echo " -d deny_join_id0_tests" echo " -m fullmesh_tests" echo " -u userspace_tests" + echo " -F fail_tests" echo " -c capture pcap files" echo " -C enable data checksum" echo " -h help" @@ -2059,7 +2149,7 @@ if [ $do_all_tests -eq 1 ]; then exit $ret fi =20 -while getopts 'fesltra64bpkdmuchCS' opt; do +while getopts 'fesltra64bpkdmuchCSF' opt; do case $opt in f) subflows_tests @@ -2109,6 +2199,9 @@ while getopts 'fesltra64bpkdmuchCS' opt; do u) userspace_tests ;; + F) + fail_tests + ;; c) ;; C) --=20 2.31.1