From nobody Fri May 3 20:52:21 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6402:2547:0:0:0:0 with SMTP id l7csp753655edb; Thu, 10 Mar 2022 00:09:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJzBgz7VwGyFoTOuZmcg63FgqLDgOKH7oGt++uKq14zuyTpSZsFHj+QPPUU3TT43XNt2rceM X-Received: by 2002:a05:620a:2912:b0:67b:24b3:8bda with SMTP id m18-20020a05620a291200b0067b24b38bdamr2268231qkp.156.1646899790475; Thu, 10 Mar 2022 00:09:50 -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 c18-20020ac87dd2000000b002e063a95701si2276931qte.764.2022.03.10.00.09.50 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Mar 2022 00:09:50 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-4208-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=FrtDpa7M; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-4208-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1:3600::1 as permitted sender) smtp.mailfrom="mptcp+bounces-4208-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=QUARANTINE 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 1590B1C0B91 for ; Thu, 10 Mar 2022 08:09:50 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id BF53753A7; Thu, 10 Mar 2022 08:09: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.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 116FD7A for ; Thu, 10 Mar 2022 08:09:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1646899785; 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=UfAC9capa+dG+XD2hsj1t26KCF27EscWhUfjnUAQ0G0=; b=FrtDpa7MMyPUuwIxrrCbWf6O7pxym9N1yPRQ8ucm/5k8Ncm84PDGdWQrfa6ogc6jQQAlaK NB4iccRZUWa52eWgp5TZzZlucM7SjD4YcRm38+TeFXhkeTnZy+I/8GAVgLHi/OwZD1g7Sp R8rbv/VNmnv2nhmZizp6p37VQF79QK4= Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-db5eur03lp2050.outbound.protection.outlook.com [104.47.10.50]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-5-ngR7tC1OOHixeWkvBb2sZw-1; Thu, 10 Mar 2022 09:09:44 +0100 X-MC-Unique: ngR7tC1OOHixeWkvBb2sZw-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Al16YiJulnzWpL3m0IoXBDWM3/+7pYnN/oZnL8CnXc08uF1Sni1bv3EVER9qLuRWLay5NSQoNqwEVa/Oy/isAQerrXxEneCrgpUGLorpqT/1bv88Z0675hFDoYsrComUYTzdzQRJipFlUaj9vV97+9F9hy00zjSVgKlFW2LcQ5mP275SlzAUD1sMzQxIoRsec/Ut+enIjGoigEPik6L/g9Yhy8CtjcYntkZjOMxpx1Syk6l7UktjNw3Tz3WcHNJYCOGwIb0ZwaDUXIJqpwKVsPmvpsfgitURGNfKUCsJeYjBygF5hVOfp/7Mq89d6IES64e6obmXWOf1JQhYWHcjwA== 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=tg4NsWCDGlx9EShkaxfNB/t/1lgKY+sl/WyEBTWM3y4=; b=N6D1qwuZ+9rCEI4OGgVkpbTLaLqr+KLcQrpUHxd9fpN3V17bihCfxbWJxe3Zcg/zTVHZvkVsvBF87VSu4NFLzyZndBzrZjCogEyhJd26Ri1LksuJHGTE319IWqdY2p3GfYYU7xjVqQnMKqxjILADOzUuKzOdfDgkTj9cegztEZIEkk5AqYkoHnvuZypRBo9VjZqjHu4E09QoMZVqWVJAZT01b6cWs9LJ8Q78wPUJ2IZGBBtbjE/YI1eVMos603ZtRg6fJs6epL4pnMKM/OFBRWjnADL2CWglyF9grZRb4Gl2IyxzLXPc5zCZsMhT+EdqnM4haouZe9XXPzWDKLRB8w== 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 AM4PR0401MB2259.eurprd04.prod.outlook.com (2603:10a6:200:50::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.16; Thu, 10 Mar 2022 08:09:43 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05%6]) with mapi id 15.20.5038.027; Thu, 10 Mar 2022 08:09:43 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang Subject: [PATCH mptcp-next v4 1/4] mptcp: add MP_FAIL response support Date: Thu, 10 Mar 2022 16:09:24 +0800 Message-ID: <07c2999bfa92fd1ee9514fd28a96e18d4d4bc3d0.1646898548.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR02CA0211.apcprd02.prod.outlook.com (2603:1096:201:20::23) 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: f5142cfe-83d6-434f-87a8-08da026d5532 X-MS-TrafficTypeDiagnostic: AM4PR0401MB2259:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gbJrWqAmRsrRa5i4KHeqhqMxhBjfudW+SkKyslrXklf78YjCdmK9Kf61kgrefqUJZjT8qK1buhADXRBb+HUEqgU2giHjVhwUeeTArDt6fCLu+5RZwJQqGZgMHRmyH+u7PvrO5OQovHKADSpo2ncPy3Mc1YjzetbcURpsJGE7Rz4G/QSlAzoL0Ic/MYsx013wVb1Xs7T69L+OIFtEM80zgKfTQ3f6lzL55N8wECTR6BUAFyQSFMxVUmZYoNIfGno+LJpT3y8WoU4bDJn1M8YZIT/oUvbwUWlehG6shLHu/T0MXvAJ1Mzmjw42QvqP0qgGsTVSSAFcykKWpg26+s0yi33ms/jVUURjLB+zmtjyKEyZzIP6d8WKSScarYoYh2NYwbIA1adHQ4NXWZgLefhq4ObwE5RvHssPfnJO7bWhNuWke1RSoyJBEyilTlPqizsQwixzElsV9GqBZ/ouhFxPaUbOLkkYzKaraKHTaKGS6rlb8k1TTL+tf87X6ZYIhDBhsX+p1nxSCr8bFziIkNEOWoKg/VeJ4wySo2uVsQSWBc9sPpkdrR3J0Ik+ufBruFknQWDxUbtw7ePEjybyXfTLTIXnb/Dm2m0Bmjr2FPGa87demIzL36zvUXQLmOMSk2UXNkjWiFicthSfZMbiCZ+icOl8F43DZPBn/x3u22B0kcFhK6FXptM5ouFplsmcHz0o 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:(13230001)(366004)(2906002)(2616005)(107886003)(186003)(6916009)(316002)(26005)(6666004)(6512007)(6506007)(38100700002)(508600001)(86362001)(44832011)(83380400001)(5660300002)(36756003)(4326008)(8676002)(8936002)(66946007)(6486002)(66476007)(66556008)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gb9GxLc5ppf2rHe+Ks8GQdfD2QSdg7R438n+GQZah0mq4XyEBIPf/UPtNvn4?= =?us-ascii?Q?LjwGMCPiGD14mECgJ2SU6Atfaa4dc1uSpfnNEqOAc6XopZmW1UVA8ZrL4Ifh?= =?us-ascii?Q?62mek3qK9YXIDScStoPcSQWKs7UHlaJlhI4ltetynwvw/UQdg2OGQ+meAp/Z?= =?us-ascii?Q?VatTUy2n5aU9gUa2qXfPrGMbQizaxCK64CJM10g3qGguNVSX217LHby9/80F?= =?us-ascii?Q?79pYHgNgwF421H2hN7qkert2WJNgZ22gf/4cF+WbFPU7qtrDuh/fIfM+wr2R?= =?us-ascii?Q?S6GvFHrmPkrZ0pLhipVbaB47TWCGkAXPLh0tRn6oqJc5wzLUPOFhIDDAkjVt?= =?us-ascii?Q?1bBItOAlLtc8jWW0su4tfSAndzEnAn3/BnBvnpxlxT3oldX2gKYeFhuOaI3k?= =?us-ascii?Q?cQyWwe8GkbnUXc86cHMvprTsV49b+/1PypvSPartPIwbsNWVEyXz/qWhwbmK?= =?us-ascii?Q?3U4dpvgD2PIjbIkt0NBSLkw4CNB+S2qrijoWesbpczLYwMQLAyJym8d3CYPL?= =?us-ascii?Q?Jd53zJMHWPYabEC2rmMciie5a28/rExVg6ZGmVIwnmpY25/B2ep3GfVQduYx?= =?us-ascii?Q?EYt/MlX0T+PXykw8zIvzYlzPVOc+poYEksVMfF6qSVP1YXFfhUyNFU76CIoV?= =?us-ascii?Q?sbgr1nnMZef5NO/mOEbGryn32RkFirplOMvf1EUw7fL+spZJgsubXzH8YGhI?= =?us-ascii?Q?hBkzbuH3muT7fdB6e3It0E9s8tWfF2WbjXyImUI3EogUPIwfUHTps7yAYuJw?= =?us-ascii?Q?PPoS8DGWiA5btIz5ZCRmO3Zg4HbPc43DAb047LX0XfRMfxkIZwsDtvhQt3F9?= =?us-ascii?Q?b4EQNKEaWW1tT24AhqU/04IEFbAfVmSHsqBuHGrNWvbxwTMg+mVItV6IV8b0?= =?us-ascii?Q?S7j4g4oQh4LS1sx5cFEaS37T6OjhAf/sCvI08JWCdWUtmPOTuCDyNHtdFYSF?= =?us-ascii?Q?U3MCwyJWsW/TqqH+adr0F3k9R9DptOe5uqTEiW8/P+zh+skMD+Xrn7+wuDDz?= =?us-ascii?Q?VnaZKkOV1EEesRrKlSGt6y6JA6XbfeUopzuB2xsgnR6PJmGUzT7V7oF7ynvy?= =?us-ascii?Q?4aupkMJ0VQ80an1sCEjXCJbZVDHv0+yQhRjuGqTTrd08S1ERgaDyb8I+rEHS?= =?us-ascii?Q?xLZIvmbEjildWoNP4X3CbhhVu8RdmUagFtSh8xNiTqbO/i6eMOBiWVFtbHes?= =?us-ascii?Q?CHtFCu8RHDipbWHQiiNP7ookcvQ3BZiiDKqed5cud3tr59QNAswdm86IDusZ?= =?us-ascii?Q?Ph5EWXS0Fz8abU/hh7khCSehR2j4mP5HYu5En3mYsww2fDIGTtLAMQ7b8Tjd?= =?us-ascii?Q?P+IoBkHbxMO+BHst25OAgEuW4BpZjeJiu+064a8dRPcgywxsxXittg/yZjHF?= =?us-ascii?Q?GGLmKI7bSo+uwE0fipXwDxmm2BzppA26JGvVrqTERiyWz0Yevk4MQ9Bnyo/F?= =?us-ascii?Q?FjmztF5N2WkKGvBh9clm7wP3GerkYYbzaJKXPiZPiK/8Ol4xiopv4e30pSov?= =?us-ascii?Q?KtylfaX4KDG3/S9haIsrf11PcD6RMs1vbSOySHslIsWfl5jbO5yzA+uVNPo5?= =?us-ascii?Q?BcyMnQk0OwoHB1jVmAcj1kFmVFBD7yh2b6oOaXx85kc4gISC4fsEk1GU9qMc?= =?us-ascii?Q?AHrTxv1MXcUx8VgKoSNXd2I=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f5142cfe-83d6-434f-87a8-08da026d5532 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2022 08:09:43.1349 (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: tvg30ltrmiEMwBMdXDD92r9AxhZvsKmerFbc5HSOjwplqTlU/bDfUhHko8otH0/wSgBt87A4TQ8n8MjJuR/Tjg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0401MB2259 Content-Type: text/plain; charset="utf-8" This patch added a new struct member mp_fail_response_expect in struct mptcp_subflow_context to support MP_FAIL response. In the single subflow with checksum error and contiguous data special case, a MP_FAIL sent in response to another MP_FAIL. Signed-off-by: Geliang Tang --- net/mptcp/pm.c | 10 +++++++++- net/mptcp/protocol.h | 1 + net/mptcp/subflow.c | 2 ++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/net/mptcp/pm.c b/net/mptcp/pm.c index d0d31d5c198a..f5f4561f332a 100644 --- a/net/mptcp/pm.c +++ b/net/mptcp/pm.c @@ -279,8 +279,16 @@ void mptcp_pm_mp_fail_received(struct sock *sk, u64 fa= il_seq) =20 pr_debug("fail_seq=3D%llu", fail_seq); =20 - if (!mptcp_has_another_subflow(sk) && READ_ONCE(msk->allow_infinite_fallb= ack)) + if (mptcp_has_another_subflow(sk) || !READ_ONCE(msk->allow_infinite_fallb= ack)) + return; + + if (!READ_ONCE(subflow->mp_fail_response_expect)) { + pr_debug("send MP_FAIL response and infinite map"); + + subflow->send_mp_fail =3D 1; + MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPFAILTX); subflow->send_infinite_map =3D 1; + } } =20 /* path manager helpers */ diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index c8bada4537e2..83f0205f0d95 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -456,6 +456,7 @@ struct mptcp_subflow_context { stale : 1, /* unable to snd/rcv data, do not use for xmit */ local_id_valid : 1; /* local_id is correctly initialized */ enum mptcp_data_avail data_avail; + bool mp_fail_response_expect; u32 remote_nonce; u64 thmac; u32 local_nonce; diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c index 30ffb00661bb..ca2352ad20d4 100644 --- a/net/mptcp/subflow.c +++ b/net/mptcp/subflow.c @@ -1217,6 +1217,8 @@ static bool subflow_check_data_avail(struct sock *ssk) tcp_send_active_reset(ssk, GFP_ATOMIC); while ((skb =3D skb_peek(&ssk->sk_receive_queue))) sk_eat_skb(ssk, skb); + } else { + WRITE_ONCE(subflow->mp_fail_response_expect, true); } WRITE_ONCE(subflow->data_avail, MPTCP_SUBFLOW_NODATA); return true; --=20 2.34.1 From nobody Fri May 3 20:52:21 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6402:2547:0:0:0:0 with SMTP id l7csp753687edb; Thu, 10 Mar 2022 00:09:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJxZS7QLvE6pMZw3RxfLD3pUoVo2Jk7BqL8TGF7DZsF25kSTAnyl0p+Eswp3LGuMeXMx/epk X-Received: by 2002:a05:620a:40d1:b0:67b:1ee4:8f47 with SMTP id g17-20020a05620a40d100b0067b1ee48f47mr2255478qko.197.1646899797307; Thu, 10 Mar 2022 00:09: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 bp42-20020a05620a45aa00b0067b0e7b51adsi1823697qkb.310.2022.03.10.00.09.57 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Mar 2022 00:09:57 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-4209-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=WFW7tpG8; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-4209-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-4209-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=QUARANTINE 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 F2A6B1C0B9E for ; Thu, 10 Mar 2022 08:09:56 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 8C3BB53A7; Thu, 10 Mar 2022 08:09: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 81BEE7A for ; Thu, 10 Mar 2022 08:09:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1646899791; 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=lRXaXakgZDJHdcH6ARxyeStYz7Yc0VnsUTMauqXsLnY=; b=WFW7tpG8qnWck3WVotIu51R/Sre5tbYWZxrAz9ncBEgTNe1rNgqCN5FNAZxpZgSwMXokif MTCBG2eQ3+9f/zmT2pEqfkXZgkLMiDd7Exp0UvdAMagEnBxrxXohSHZbTNRN5JYMQoMS/1 rE6wB8Anfu+u9LXF4e8l6eyiBUlH5Fo= Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-db5eur03lp2050.outbound.protection.outlook.com [104.47.10.50]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-29-qtbBUpXlMBWPgDSjlhIE_g-1; Thu, 10 Mar 2022 09:09:50 +0100 X-MC-Unique: qtbBUpXlMBWPgDSjlhIE_g-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hD5jWHrqcQ2jr4hkY4eo54mhvq+xeizGHtD+xtqLpEokihNJdsVaStzgwF4kqFAKjE0yx7YOFJeaGWeiD1gk/k8hOaimu6077lpAXxFvuA5Wsrx28ADZ4CiAbc4oZh+hBrjqBbs5fxipt5U/zJ8Y1PHY2aWkk+EjmX+cZQbPZokSMoE8+8sY+wnw/uc/9uirmG2A4NNI7R1oAGFbDsY0nd6mFEdPqyB+IDHcX0SwiICzW7FQaUImwlTH5cOjDAXKfAT3Ch6kU59kieZcWN2vB0q6p9GiEDBTPog0CGgkcB4wORh+mkWtI3Q2AjkaraA1BnPDtvetOb8lNDu8Z6vwIw== 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=XzkEsX3djT5dENRKrhUutBJf4LfxtebVXiwoZUG3a1c=; b=J/+FY8Q3vA7A9+OPZelJj1NzxxGzEAMytbby7679yS7midaqCt1nLveTI7clp3lSRyY9lX5gzjT8IbT8Rh7/vo/UR3zh/1eVgzcQpg4Fxapv8dngRtvw+WuKUMIyQjG71m+b9YDaOt8cdlLgs+MafR9J+Zh2+JwkcT72VOXiQOf6q+GpAys/O2i3ILfsk3l0mS03/4z/14inc44gdAWixfTz+q9zV/+be7+UUY3B9pKvEIXsF7LORrjtVUVc5LBOKrElOtR2xLN63nocDbJ78o4/WzbByXBL8zIIEFE3mWQ/bgZFrRCCiJ0K3OvpVEi1MVNmI6VIcYnqPRPfTVRTGA== 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 AM4PR0401MB2259.eurprd04.prod.outlook.com (2603:10a6:200:50::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.16; Thu, 10 Mar 2022 08:09:49 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05%6]) with mapi id 15.20.5038.027; Thu, 10 Mar 2022 08:09:49 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang Subject: [PATCH mptcp-next v4 2/4] mptcp: reset subflow when MP_FAIL doesn't respond Date: Thu, 10 Mar 2022 16:09:25 +0800 Message-ID: <3ad7b8308cfb43d625b75d059db95ecdebca4caf.1646898548.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR0401CA0001.apcprd04.prod.outlook.com (2603:1096:202:2::11) 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: 93e7a67c-4fbc-4582-59fc-08da026d5906 X-MS-TrafficTypeDiagnostic: AM4PR0401MB2259:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jCRDlliVeEbxgkzs68u89egU9qn0fF69OY8QEw8BESnsaDCvllZZn3oydB9p9DobGnP/zGTPAvpWzm6Fkq0uLLOn423TSIOaCNQcmGLJsio4SDftAt9Zm4cfIsD4vLR7c/hSfQaWu/RgxOgG4PT1pUVCwfz2iYKFH+L0RW2J+ufad83OgQ7m16VCvu0kareGGFR72lIndUYpA0XNHPn6OjILjzZSRgO8b3mrcgwiaiOb3g1GSA/C6/7c2xU4MMfrI3DpjstFDk+VoEPFhvAY1V0RFP+X5Fyv/KbpbNiV33Eh4IDuwybMdW/uDPOECDrIdnUQKJyr4v7aev/R2zO3x0t3Nr58CGMFxcunv4aOzA6eEQe5YAX0ykZ7d+EmWidNKzlX7HdD9WpIaiZJZ3SfmFCtQGcbpCz8RCMb1OMVNpAnGEjGVdXeGMq6pn9UlIcGJ0n/lxqvBk9idAD0HLUm6WiD21zrepCFTCKONij1/2mWWKgzVFQMoTVrhc0YXedMdx5hcMqTw17QkS2N/49bWDbR2bH+KA6RKIURY3WdVXUg/tyVm+PowkhJ+JJl/vHifAVz2J9Xu8AaSoL/myB/Y6/+qlFiSXIJBhhXvvn0cJhbvs5mrZPKtV0yiemwcx3egoTpvjNGfAgG1XuHNdSSGnuUT0nzepqIHEBqHnGefsd34NfQIOWaUy3dZHS+veXo 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:(13230001)(366004)(2906002)(2616005)(107886003)(186003)(6916009)(316002)(26005)(6666004)(6512007)(6506007)(38100700002)(508600001)(86362001)(44832011)(83380400001)(5660300002)(36756003)(4326008)(8676002)(8936002)(66946007)(6486002)(66476007)(66556008)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?y/falia5treQmBOOTs6DxycwaC7QMaliPJg0YLD7DYJNuzCFaCwLQ/BPAeaT?= =?us-ascii?Q?LsbU7FR/384OphsLVfLDMX0U9Aa3dt3WUcbz/WAnZUQFRt/BgQm7KD2GWINE?= =?us-ascii?Q?pmovkOPl8p+6s+yAcBvsfCFJnA5D4Ld1TqiL3osq9Jr9QB3FnejOupUgoQq5?= =?us-ascii?Q?LAOcPXwFgXxqIATlzU8+Rb9YAHALJoMo+INUgN8x7E/Bq3+AY9VuFoeQfTua?= =?us-ascii?Q?L1Hp+CFCaHIZ5nYbM4LwBv20Tp+o2ESCbdn80gXrliEeSy0KylyXmw/+pLOQ?= =?us-ascii?Q?SHWZQEqDo1BfKth2l9iW1lN16ANKxacp8r/n25FZp956KNorXKD4uMWx8m9a?= =?us-ascii?Q?cWQ2zj8TzSUAWShV0nb8lDECetHR/Q6TjNQLLPtQmHfuUMAtrt/mxbytOnL1?= =?us-ascii?Q?u7bBx4opTbTJokeK+iPuIRBzJJhDm7HeJXoic7gW1sJEAbHa1B2X7QfikMWv?= =?us-ascii?Q?sx+IfAq5Cpw3QarWYb9vJ/wGUKpRZRtEXM6Xaz63qm6oVU3RoMLaP9DIlZbT?= =?us-ascii?Q?oKInQ4cMiXcTc8S7zcDnY3tU7FHl6SyBXuAwfHooNr9ijuoJdvOffLmtW7Yk?= =?us-ascii?Q?iCVs17XIYnLX+14baNqCRA3+6HAEimd7nWxKzmL0I01zsR5sve7F8IKJwpIJ?= =?us-ascii?Q?PvDUEt7Q277panPjSuMltlpQ3GbKSrWBIF5NV0lGRN48waN1srfpGwbE7xqR?= =?us-ascii?Q?wK3LsSYlea+s4TgGziX2VaTTEmWCi+NXBgh8WTfDgwOOAYhqLrMsT+1LqTQx?= =?us-ascii?Q?BMCTOw7027ZaY4ECdRs+cNlOdRv+wFLsHbVlV+dm7ezCTjhxKsqI6ZLcPAe1?= =?us-ascii?Q?VY9FdwGSqQ/ZJL5tvoMylGfQqo0ykn8gBVoFgPrvzYT/fO0xdtMARha8Hd6T?= =?us-ascii?Q?nXcYJl1ThWhnDyExAEGxJWRORqpwoyFrWK6OGbNsBSxyS/EJ9FzsXq6ETq1n?= =?us-ascii?Q?pxY8GY3Jqaa1L1Onb8veQ4WE7MspFaE/ED4o+zpLNQxjo9O6eX8dBbwkeGDj?= =?us-ascii?Q?8/HLIIc0X1SmgNnCJe2Tc5Biz9iIi6GqOec2N+1RJQ18dQwLr4dFLGcE2BIb?= =?us-ascii?Q?9W9Z1VsWJVaLUfXDucfVdAOGi2unBMNyX/cePF/gRCQaxbCIY5GN3krrIm4e?= =?us-ascii?Q?3n83+AXijXqpvK0dV85Rm4j9HJsVPklsnf924q1mvZg/UictWurXvtSk+IuG?= =?us-ascii?Q?0T/D5golgo5g8IgAqIcw0cTN/jNM4HUZTGX8LCnb9/Ohq8T0iC0nZHp0x2UV?= =?us-ascii?Q?keJvgGLfTfvWljMJ2s/LywI6W9bl0zx7S/Bzj2SM9XaQFBCWXrRAbvSblRFN?= =?us-ascii?Q?bEJXnRoooPhR4ylHZCTYVNc96+Wd0H1SFTrHJvmIa8NkiVTkHrBMuG92aLi8?= =?us-ascii?Q?W450Fqu4vZmWe3eV46ZLAQj1oq/RyjPUZcSeMnzqd5rmEmRJYCCLEU7gzgkN?= =?us-ascii?Q?leL9FVW6bjHVxaj2DP5deFnBngYLZ6x6Bpc1B1ZhzbyBNHaLtPlmHC1Ug141?= =?us-ascii?Q?t/TktEqMsnAA5r6OL7OcfzBUIEfQkJb7DKlpcB6l5P8f2AT921RQT3W7P15G?= =?us-ascii?Q?YUxz6Z4JCSPatohpCTWzg1h8NX6qJcNAz9ZpOadN/Ye8lD8yZWjh378PxO6G?= =?us-ascii?Q?xc0EGXHZm868aDkrkTJ2kiI=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 93e7a67c-4fbc-4582-59fc-08da026d5906 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2022 08:09:49.5719 (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: pz00K6Dai5q1w5Uqx37PLMHzKpF+4qoEc1bk6vM+5dz//wVWj9MvTnuZzWSE6VghyfKMF2NUI3hbHAjl/z+DUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0401MB2259 Content-Type: text/plain; charset="utf-8" This patch added a new msk->flags bit MPTCP_FAIL_NO_RESPONSE, then reused sk_timer to trigger a check if we have not received a response from the peer after sending MP_FAIL. If the peer doesn't respond properly, reset the subflow. Signed-off-by: Geliang Tang --- net/mptcp/pm.c | 7 +++++++ net/mptcp/protocol.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ net/mptcp/protocol.h | 1 + net/mptcp/subflow.c | 9 +++++++++ 4 files changed, 61 insertions(+) diff --git a/net/mptcp/pm.c b/net/mptcp/pm.c index f5f4561f332a..e3a541ffebbd 100644 --- a/net/mptcp/pm.c +++ b/net/mptcp/pm.c @@ -276,6 +276,7 @@ void mptcp_pm_mp_fail_received(struct sock *sk, u64 fai= l_seq) { struct mptcp_subflow_context *subflow =3D mptcp_subflow_ctx(sk); struct mptcp_sock *msk =3D mptcp_sk(subflow->conn); + struct sock *s =3D (struct sock *)msk; =20 pr_debug("fail_seq=3D%llu", fail_seq); =20 @@ -288,6 +289,12 @@ void mptcp_pm_mp_fail_received(struct sock *sk, u64 fa= il_seq) subflow->send_mp_fail =3D 1; MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPFAILTX); subflow->send_infinite_map =3D 1; + } else if (s && inet_sk_state_load(s) !=3D TCP_CLOSE) { + pr_debug("MP_FAIL response received"); + + mptcp_data_lock(s); + sk_stop_timer(s, &s->sk_timer); + mptcp_data_unlock(s); } } =20 diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c index 3cb975227d12..d1a62e2a1d29 100644 --- a/net/mptcp/protocol.c +++ b/net/mptcp/protocol.c @@ -2166,9 +2166,33 @@ static void mptcp_retransmit_timer(struct timer_list= *t) sock_put(sk); } =20 +static struct mptcp_subflow_context * +mp_fail_response_expect_subflow(struct mptcp_sock *msk) +{ + struct mptcp_subflow_context *subflow, *ret =3D NULL; + + mptcp_for_each_subflow(msk, subflow) { + if (READ_ONCE(subflow->mp_fail_response_expect)) { + ret =3D subflow; + break; + } + } + + return ret; +} + static void mptcp_timeout_timer(struct timer_list *t) { struct sock *sk =3D from_timer(sk, t, sk_timer); + struct mptcp_sock *msk =3D mptcp_sk(sk); + struct mptcp_subflow_context *subflow; + + subflow =3D mp_fail_response_expect_subflow(msk); + if (subflow) { + bh_lock_sock(sk); + __set_bit(MPTCP_FAIL_NO_RESPONSE, &msk->flags); + bh_unlock_sock(sk); + } =20 mptcp_schedule_work(sk); sock_put(sk); @@ -2494,6 +2518,23 @@ static void __mptcp_retrans(struct sock *sk) mptcp_reset_timer(sk); } =20 +static void mptcp_mp_fail_no_response(struct mptcp_sock *msk) +{ + struct mptcp_subflow_context *subflow; + struct sock *ssk; + bool slow; + + subflow =3D mp_fail_response_expect_subflow(msk); + if (subflow) { + pr_debug("MP_FAIL doesn't respond, reset the subflow"); + + ssk =3D mptcp_subflow_tcp_sock(subflow); + slow =3D lock_sock_fast(ssk); + mptcp_subflow_reset(ssk); + unlock_sock_fast(ssk, slow); + } +} + static void mptcp_worker(struct work_struct *work) { struct mptcp_sock *msk =3D container_of(work, struct mptcp_sock, work); @@ -2534,6 +2575,9 @@ static void mptcp_worker(struct work_struct *work) if (test_and_clear_bit(MPTCP_WORK_RTX, &msk->flags)) __mptcp_retrans(sk); =20 + if (test_and_clear_bit(MPTCP_FAIL_NO_RESPONSE, &msk->flags)) + mptcp_mp_fail_no_response(msk); + unlock: release_sock(sk); sock_put(sk); diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index 83f0205f0d95..bf58d3c886f5 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -116,6 +116,7 @@ #define MPTCP_WORK_EOF 3 #define MPTCP_FALLBACK_DONE 4 #define MPTCP_WORK_CLOSE_SUBFLOW 5 +#define MPTCP_FAIL_NO_RESPONSE 6 =20 /* MPTCP socket release cb flags */ #define MPTCP_PUSH_PENDING 1 diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c index ca2352ad20d4..d38b8089988e 100644 --- a/net/mptcp/subflow.c +++ b/net/mptcp/subflow.c @@ -968,6 +968,7 @@ static enum mapping_status get_mapping_status(struct so= ck *ssk, { struct mptcp_subflow_context *subflow =3D mptcp_subflow_ctx(ssk); bool csum_reqd =3D READ_ONCE(msk->csum_enabled); + struct sock *sk =3D (struct sock *)msk; struct mptcp_ext *mpext; struct sk_buff *skb; u16 data_len; @@ -1009,6 +1010,11 @@ static enum mapping_status get_mapping_status(struct= sock *ssk, pr_debug("infinite mapping received"); MPTCP_INC_STATS(sock_net(ssk), MPTCP_MIB_INFINITEMAPRX); subflow->map_data_len =3D 0; + if (sk && inet_sk_state_load(sk) !=3D TCP_CLOSE) { + mptcp_data_lock(sk); + sk_stop_timer(sk, &sk->sk_timer); + mptcp_data_unlock(sk); + } return MAPPING_INVALID; } =20 @@ -1219,6 +1225,9 @@ static bool subflow_check_data_avail(struct sock *ssk) sk_eat_skb(ssk, skb); } else { WRITE_ONCE(subflow->mp_fail_response_expect, true); + sk_reset_timer((struct sock *)msk, + &((struct sock *)msk)->sk_timer, + jiffies + TCP_RTO_MAX); } WRITE_ONCE(subflow->data_avail, MPTCP_SUBFLOW_NODATA); return true; --=20 2.34.1 From nobody Fri May 3 20:52:21 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6402:2547:0:0:0:0 with SMTP id l7csp753733edb; Thu, 10 Mar 2022 00:10:05 -0800 (PST) X-Google-Smtp-Source: ABdhPJy3jONWWX94+lNJWnt7eplNhV8fbAyzm5kI8If24dCQhXl2R0RUpJjMNVnG6H8dImyWEJdx X-Received: by 2002:a05:6214:2266:b0:435:ab16:1eab with SMTP id gs6-20020a056214226600b00435ab161eabmr2737347qvb.17.1646899805429; Thu, 10 Mar 2022 00:10:05 -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 u13-20020a05622a198d00b002ddd60db282si2558696qtc.291.2022.03.10.00.10.05 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Mar 2022 00:10:05 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-4210-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=Koux0SkO; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-4210-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-4210-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=QUARANTINE 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 31C0E1C0BF9 for ; Thu, 10 Mar 2022 08:10:05 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id BAFF353A7; Thu, 10 Mar 2022 08:10:03 +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 A24317A for ; Thu, 10 Mar 2022 08:10:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1646899799; 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=f76RwFKA5b8Bwp0PUQTNxsNuvx+bwEcYBtw6HMHVNYg=; b=Koux0SkODs77LdeMtdGxawxPQoKSfRdfVQLijAfVBG3J+YWKTHYv5gH8/x0Drs+/OfjVgS OvP0CTCDd9ejLxa+k478DhZHJ3lnmCACZcOYyIuBRa6CYfwyOLBgjBp4+i0sttq2oKWvsN owUs3XhWl6FwvcL5X+bMP8xEprexZcc= Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04lp2059.outbound.protection.outlook.com [104.47.14.59]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-17-c9YApHcIOdOSu1Hu9uO0UQ-1; Thu, 10 Mar 2022 09:09:58 +0100 X-MC-Unique: c9YApHcIOdOSu1Hu9uO0UQ-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CzW4Y+dVAcqVcDBJ2zNBSVJnnKjF+4NzV2Uu69532r8atUkDXkKEBtL3veQDyo6KBVgLbkK/YDK8FGT7Pszf21fYFtus/KMOOEqxAPNpC3b58A/6O/o8Kyqs9z/WcvSxfV6SXvlPfhMfT+1zg57aDoJoOdrl5y8g7OUFDwlXjj+0LZ1aLYWBWErdYimYlQTZfaGinlwxURhDgfj9VUyIH5tFNvANPWR2TWKTjk84v/koa9A8WnwZs7Wdygh5BUzDq9up28Oby1+7vB0o6pZpjc/zqrpUDlq7C07iR5uvjGPKWTMvOZl+sgFp44m0Vh74eVIffkEhyM5MZMcVUtWM9w== 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=uU1mCqPs4Vw4kAL2cPM5Yvxj80ihZXnk3ObKZFUzFZI=; b=cxG1aXdWMjduPdDBa89lpDiIcR++3BzmLi4tqRZMq8e0Y7bsMAA7Utwg9ZZ6vfXBmDAzBokG3h1I0O2Q/Us11nxV+NqX0aMJ2Imwe4FQMMsbKLUooZPrZp5nAjd2mCFtQcHZWaS3nE9ZeSOo/dsW8vsCt+H5SvbX10Ns/LqQsBcqmDI2Zgv6KW+93g8REa0OKNpmlb8LAh51/BgJpnwmyGXUnepMrRTB6CfGToeTJWqVAB79ccdRnWiNPsFWTQgoFGkdw5vftqq7ipY7u/iX+l8Q5M8jk4APYSYsGFoiyqwitWOIIukatM5oe3+7wsrtpQlFoghEFmilhQkdu7la1Q== 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 AM5PR0402MB2772.eurprd04.prod.outlook.com (2603:10a6:203:99::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22; Thu, 10 Mar 2022 08:09:57 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05%6]) with mapi id 15.20.5038.027; Thu, 10 Mar 2022 08:09:57 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang Subject: [PATCH mptcp-next v4 3/4] selftests: mptcp: check MP_FAIL response mibs Date: Thu, 10 Mar 2022 16:09:26 +0800 Message-ID: <4fb02333cf49b959fbe5770879a48d0feae42184.1646898548.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR0302CA0017.apcprd03.prod.outlook.com (2603:1096:202::27) 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: b8ddcc63-d3fa-40e5-824c-08da026d5d96 X-MS-TrafficTypeDiagnostic: AM5PR0402MB2772:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6modB0ofoVy/HBbWcXzYz2ddnPbhRN4FDYDTJCwYp0osQ6yAL/v1cxx7WgkUKrsmfGNWVLpv2IpaAiDT71ddUcS1Rm8jX9Xio70t1FXFbDCx0HuzO5o230EKy4UWMWdbLvhww0GxthQ4eUWrbXhj23ycnF1Px0S0Lve3rRhyoAra5R+JrkhQF4AFg+ENGYbnOylUK7gg0ETG6yPXjNcCwRuou32npa20DzqNr6aPBAy7Yit8libBQZ/ztn0LWTJDMNYaZlt1EGVanR/6t+SnKfoSyIvaxG2QaxbsMHdzZ9Ij5cuBqjrFW/BUQn8qlgvWJAYutdpwI7hk5Zghv+40GfB4ezYQuvRR4qL789aOAIQwID1QWOSOQfqzDkkA/T1VWhluUsdgiBATh6Jqi2bkeAwilhHG0Asu2enc87FWzW7KAVtfxpCWSkmnW/JUGAhizfwe8NKhtE7ZjStLYneJ3MXC7Pk9pHhgBbsVBY22ZM21oWx6of/qjd5LoR/9MFPfzrC52OyhpBn1wvtiOGw+cTA0IV1Opj2d3fYLL2rlbhXOm42u+yO2k6SERbhVRHoCh619GdaW0toQSITQQ1YW7WxexM7GPdsrNhYQBRBceD8ZgTa9S/WQvp1BGX12j24Wxr+oCyqslyolzB3Zgpt7XaZmXkpr78M0H0b2nmrj7q0X+IlHKDHnsNgd521Cf8wt+wToEAxscSYLJB2LhnLbOw== 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:(13230001)(366004)(5660300002)(8936002)(66556008)(36756003)(38100700002)(2906002)(2616005)(6512007)(107886003)(86362001)(6666004)(6506007)(44832011)(508600001)(6486002)(8676002)(4326008)(316002)(6916009)(83380400001)(26005)(66476007)(66946007)(186003)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?imOyzubpdl/tQmvNJBiBV8KZWCJ/+2OvAj9r85FiZoeGBNxVTRHqGCiw6JtB?= =?us-ascii?Q?Y+P8jeVEmrO/Vts7PX429pA/SjvUAJDnc0xrsI8kLtcewH9vbSI6+REEY5vV?= =?us-ascii?Q?lI32RMtwji+qyIYPPkTx/JkqVrSNQ5O5yKvV3qO10hLmLI902zBn/0El/JgY?= =?us-ascii?Q?iJExCl+cOyQeN+rrSUO9cQj7L2XVp+WpE/nsRHOka/dlavcbghUyBnbpenef?= =?us-ascii?Q?EjsLsMJZLCe6PY4nchx9ZFzQ7OSndFJ5cLwx5JpixLaru0bW1ZOJer1A0vxz?= =?us-ascii?Q?kITZFV+hE8bqiFYrpjGfiCOLexl7RJQc9Zy1f7dV9gk/eyxLR2+YpkNOaJm0?= =?us-ascii?Q?hNJdOjUEK0/oIBdIQ9ax/zmTyAGoQFu5vuY9Crg5/L9vwkUSzO+tN+vhlWyb?= =?us-ascii?Q?SWz4jqr0oWsIJUF6Ui2MTp28q3O+USkLFrWJ/yuLsLdIMok+QNAxfeTviosl?= =?us-ascii?Q?yOEwplGlSfgr0VUB7zcCbKDrXJIesomEGaHSLW/V6lJVQal+g4/1/p3XKjDW?= =?us-ascii?Q?HgZCdqpdZgxy7FUX6+GRlX3CUqsZzsqv19YI62i+7FSgkIpWGUzA8gNvXM9y?= =?us-ascii?Q?geoIuHr8k7fXFLwEOAnJD8XWdBd7VJH+gAG1SER2IBSkRZ7vS5dEfujvPg0w?= =?us-ascii?Q?MmNZO0w11UMQLvvDxjvVw/XGY5ZrfB+BesI54jloPdE4OsDn5vRT/fQqDfjX?= =?us-ascii?Q?rQtKnT4/jF/hzEc6oDqe3WAVJM4Yh+w/1WeVn7P+SqYl+5D54U+UlMpPxovu?= =?us-ascii?Q?4PfqryXcx/4ebfYeIXFrfpSBJN6T3rhA44M88r2bQyS8qd4ttMPR2fEvOQZQ?= =?us-ascii?Q?mcssdZr5oNc31sAkqx3Ki7+MV8TcstVpHfGRZy9bPzNGxK5R87k17fGbtd5J?= =?us-ascii?Q?uXTK5s3J3Dv2T1wRdY5DGvXQ4tnZoJvtnR78q2Yn8PxAa7EZ0oy3pjRIbVMz?= =?us-ascii?Q?NSFKBllr/qIbWr+yauqCtARebWR9yiurcjkwQzNfYJwobmVDMU8ZTkF6b7MY?= =?us-ascii?Q?DyGn4M3PWGKjECWI6izqqCEhpVkrlXf3NnslNM7XkTDU9WP3F4CUlKk9gqx5?= =?us-ascii?Q?ykGWzcd/zPuYT6Buj66gUpMAnKb6KjDggopkA2dUQuG8rTMhvQQUniMtp6j4?= =?us-ascii?Q?NCuoc2PnL56NCkWKrfBKpHflM65GKIe6mZNL7rhokuXyw+DdTdlBfOnzLzFP?= =?us-ascii?Q?EoYXBaGnP+jhk1BRLBCRekkImAYmfCFfHU9Se+7y78qlYkQnUrjtdBfpn+gW?= =?us-ascii?Q?VzKF3flohj31RNfg5D/saTKkgUs5RYRomtl4IiFxjqVFX1q6WHPUkU/6eyXW?= =?us-ascii?Q?+GkwGuVALpa3TvTtR5spqWnXbTj6S1E+p40gTnxK91lyYARKKqdt6n/0C+97?= =?us-ascii?Q?wf4Xfpm/VMJ2pLPAdUa4GMAtmshzrX/v0K+Wxsi0YGu++4gpPBdhZvAYu2+r?= =?us-ascii?Q?YeMmGqJ0VFBUDE1um5GwFJkqWU+APtZoHSU9ZdZkBZ5B3n7qBJDFhA=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8ddcc63-d3fa-40e5-824c-08da026d5d96 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2022 08:09:57.2275 (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: H+stP54oW4sqCRKg4JAOWGJtvFlJEBnodhuwR4kdFj7lcRqZP5CfJAovgaGLJpWluMYqygtIkE1fotkdxAtx6w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0402MB2772 Content-Type: text/plain; charset="utf-8" This patch extended chk_fail_nr to check the MP_FAIL response mibs. Added a new argument invert for chk_fail_nr to allow it can check the MP_FAIL TX and RX mibs from the opposite direction. When the infinite map was received before the MP_FAIL response, the response will be lost. A '-' can be added into fail_tx or fail_rx to represent that MP_FAIL response TX or RX can be lost when doing the checks. Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_join.sh | 38 +++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 959e46122a84..2b77576d773c 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -1055,13 +1055,38 @@ chk_fail_nr() { local fail_tx=3D$1 local fail_rx=3D$2 + local ns_invert=3D${3:-""} local count local dump_stats + local ns_tx=3D$ns1 + local ns_rx=3D$ns2 + local extra_msg=3D"" + local allow_tx_lost=3D0 + local allow_rx_lost=3D0 + + if [[ $ns_invert =3D "invert" ]]; then + ns_tx=3D$ns2 + ns_rx=3D$ns1 + extra_msg=3D" invert" + fi + + if [[ "${fail_tx}" =3D "-"* ]]; then + allow_tx_lost=3D1 + fail_tx=3D${fail_tx:1} + fi + if [[ "${fail_rx}" =3D "-"* ]]; then + allow_rx_lost=3D1 + fail_rx=3D${fail_rx:1} + fi =20 printf "%-${nr_blank}s %s" " " "ftx" - count=3D$(ip netns exec $ns1 nstat -as | grep MPTcpExtMPFailTx | awk '{pr= int $2}') + count=3D$(ip netns exec $ns_tx nstat -as | grep MPTcpExtMPFailTx | awk '{= print $2}') [ -z "$count" ] && count=3D0 if [ "$count" !=3D "$fail_tx" ]; then + extra_msg=3D"$extra_msg,tx=3D$count" + fi + if { [ "$count" !=3D "$fail_tx" ] && [ $allow_tx_lost -eq 0 ]; } || + { [ "$count" -gt "$fail_tx" ] && [ $allow_tx_lost -eq 1 ]; }; then echo "[fail] got $count MP_FAIL[s] TX expected $fail_tx" fail_test dump_stats=3D1 @@ -1070,17 +1095,23 @@ chk_fail_nr() fi =20 echo -n " - failrx" - count=3D$(ip netns exec $ns2 nstat -as | grep MPTcpExtMPFailRx | awk '{pr= int $2}') + count=3D$(ip netns exec $ns_rx nstat -as | grep MPTcpExtMPFailRx | awk '{= print $2}') [ -z "$count" ] && count=3D0 if [ "$count" !=3D "$fail_rx" ]; then + extra_msg=3D"$extra_msg,rx=3D$count" + fi + if { [ "$count" !=3D "$fail_rx" ] && [ $allow_rx_lost -eq 0 ]; } || + { [ "$count" -gt "$fail_rx" ] && [ $allow_rx_lost -eq 1 ]; }; then echo "[fail] got $count MP_FAIL[s] RX expected $fail_rx" fail_test dump_stats=3D1 else - echo "[ ok ]" + echo -n "[ ok ]" fi =20 [ "${dump_stats}" =3D 1 ] && dump_stats + + echo "$extra_msg" } =20 chk_fclose_nr() @@ -2672,6 +2703,7 @@ fail_tests() if reset_with_fail "Infinite map" 1; then run_tests $ns1 $ns2 10.0.1.1 128 chk_join_nr 0 0 0 +1 +0 1 0 1 "$(pedit_action_pkts)" + chk_fail_nr 1 -1 invert fi } =20 --=20 2.34.1 From nobody Fri May 3 20:52:21 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6402:2547:0:0:0:0 with SMTP id l7csp753763edb; Thu, 10 Mar 2022 00:10:12 -0800 (PST) X-Google-Smtp-Source: ABdhPJyuAxklD6AoOimsmZ4GQYJ/IA92wCU9ytebQL4uxRD2TffI/O4KEBkMEEhLt+VqxfvI8XzS X-Received: by 2002:a05:620a:1707:b0:67a:fc95:91e with SMTP id az7-20020a05620a170700b0067afc95091emr2197141qkb.243.1646899811927; Thu, 10 Mar 2022 00:10:11 -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 o3-20020ad443c3000000b0042c50650ef5si1484848qvs.539.2022.03.10.00.10.11 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Mar 2022 00:10:11 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-4211-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=Jfem7DvB; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-4211-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-4211-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=QUARANTINE sp=QUARANTINE 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 853F01C0E10 for ; Thu, 10 Mar 2022 08:10:11 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 4C33953A7; Thu, 10 Mar 2022 08:10: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 361E07A for ; Thu, 10 Mar 2022 08:10:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1646899806; 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=rnn9IZtqT4kIKhVOcqxMgAMgBMJFPZzZPkyzjN4QOtM=; b=Jfem7DvBGe9G4lWsyaoxajPisv3kiRdjJPMGKDTGt6gakceqhHnLvqJ6iHgy1ulJIUJMSM fkRKSxLgmQHdVXDQ6urJFAVw+NXnc5giyWsql+0URQ+u3iRvGUMyh7mKVNbSDIUFWhzYNq 2XZgfwWFW0zISvVratr68+LKuhe8OHM= Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04lp2051.outbound.protection.outlook.com [104.47.14.51]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-3-KbUDfW2qNKiDYUK923edQQ-1; Thu, 10 Mar 2022 09:10:05 +0100 X-MC-Unique: KbUDfW2qNKiDYUK923edQQ-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FEFzUtDFcdvNE1xS99AAftMAX0YYiGbqov4nuSHTySmAu+1+cHoojm4lxB2jBlsGX4Ojn6PJ9it8qPWjWNF92IxgB9ul+ttdDh+lsxwYTOzCJ8EkexqCRHAKqIqbk7POOX3sXiHJeeu32CV9tKRvJ002xJghL8k1elSm/jE/kZ7o46puYod4tGaiwfWSSSXX9KzqTk37bpovV88r4l7+FOTbLDu8SyRNcqtgL5Gigo65yZjE3rzG3upMmQLz6lRFkSgIC7vrrsYY3EhnMvxm2k6HttOY8pPcYqK7GADJeIZ9xdIusp2f/stmBBDy9D4IXrkjGZwimk3TDAscoH2eGA== 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=2JqS73Y7HFpZcVVKEOxTx68bXAb6XxNNvOwtcqTbRLg=; b=AuWz3vXd4Ou/rQ1EG2eXsp8kd2oyBFvlFdlrEJqNnmv/jBi7+a6gk/RjTOpbVEYH/pW6Uh0A/NTuE/HVFKAP/SqecFTM1EBpnBk/FN5JLFtHPxoVwEkWSmN9P9J2Kd74zIkwunQsfjse/ynC4InpnRrxHJvPp+cS4SfSj7//3Yb2+fGqciApyap0uK/f1LZiGWTtt60dfefWCRt+Ax0JVVNwWPqFbLSV8F4v03WRo/po4qAU0hrDqtOPJ7+Xz0v0T1hwVXp7iYGwmGwfxo2wkPhYFiEDxGSOGW4+FnD+9euzH2hxdBlLRlV9o0EeSRpxT5pn5xQUcImUxVOvzmpIcg== 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 AM5PR0402MB2772.eurprd04.prod.outlook.com (2603:10a6:203:99::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22; Thu, 10 Mar 2022 08:10:04 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::b110:cb51:e09f:bb05%6]) with mapi id 15.20.5038.027; Thu, 10 Mar 2022 08:10:04 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang Subject: [PATCH mptcp-next v4 4/4] selftests: mptcp: print extra msg in chk_csum_nr Date: Thu, 10 Mar 2022 16:09:27 +0800 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR02CA0199.apcprd02.prod.outlook.com (2603:1096:201:20::11) 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: 8b99ea9f-fb23-4969-981b-08da026d6213 X-MS-TrafficTypeDiagnostic: AM5PR0402MB2772:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 36mF5CCNbfwRkGRQrBBNMzRchY6TLSQGWwLMX6csrlvFSB+HgdN2Ly6CVl9nHMOHIuywiud+pWQaF6AGhdsADjWpScONfxkxBBev4CyrQREK7a8eRuRt2e6fvMGMpqiv1EGIxEMDQd7CLhB7zp9RS3HtEGAjPVMqmMbFS1pTtbv4d7UO/Am1gS+p3dVeLlAtZuYgZgdF4gAoNZiRVA/yqo3hpo6SiBqwwKZqqeOb2mu4l1XfESqWhsMuK18VHv1feWTpTsYf0ODbJTiuGU0mwn8x33VOfT1c8eg248UeYoTxumsmPGV7vB7Og3Z19mGrJh02vJLUQIgn94zIlR3fcwGlwI6K7wX9/GmZ4Q38dR/nSr5GZ+vO1l+ND2pMDiXv+qdvcJfRcmndm2WsoYnpeF3ZppWrIYsfd2otIw0acaJHBO9TNPU0YMsBrBIVlXU+MuOd4uxZN/X5lyLT8MYqUvEbZC4SgyNS6jF8LNF1c4pLHBFcHNALForK51CsizDCF5Q9wS019h+486cCzPuBEOWS8P8NGsluA16pCYVd0ry64pEYPjnY9kka9tyqb9dVB60cIYGcYwrcO6huA8r8j++gEuIhei/rfIp9VWyiX/KqcGkjKPwKfWz3yMeQMSVXQrVEBs6WGMkvtboeOrHcpwG8SZd0yiSa9+UUit889wRXaw+gGILzCnyrwY1afB4LGwwsL8qVmHR72ypCCW0jYw== 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:(13230001)(366004)(5660300002)(8936002)(66556008)(36756003)(38100700002)(2906002)(2616005)(6512007)(107886003)(86362001)(6666004)(6506007)(44832011)(508600001)(6486002)(8676002)(4326008)(316002)(6916009)(83380400001)(26005)(66476007)(66946007)(186003)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?SwfsqbLYYMMF6c/LAXLhfTxrnP8cdJiiGnCB+TdijCj56kFd0UyhxUBgfbQt?= =?us-ascii?Q?YLLuavvm88ws1lGSsmgTFRYatfk1ZXcD5iSVzRD9/cwtnqpRveJAmOThRZ9r?= =?us-ascii?Q?zTqVWptd2ppz1eZARAfoBkuvHrd6XoT6p8X+8qqrJs0PFsThLpIAyQUdH/Lo?= =?us-ascii?Q?n9BzmKUmuzREHaJmFQm/1kuWaQATuiWSPvm8Vl130UBAxnQc68jTH3xWguQQ?= =?us-ascii?Q?Wev8j538HZtBXfdxQLC6yMBTOHO6A7hZtvD1WrKlIhIJvaqWcuhWMolPzGRO?= =?us-ascii?Q?m5RsG7B1pCpzrqJLRr7k9GKUenONThg6VrzdEuIuWdoXM8WXb2uDO87KrQNy?= =?us-ascii?Q?h7pDVB2MbGVmfJkv7OIvoazgu9K3vG5okU7xd/Rn+ix8y4XZeaM9wd1ZGYh0?= =?us-ascii?Q?cf4bOaj/moBjXLMMPIs2WgC5cZUt50ROrD0TFdebo280NZFZfa17KRM25Mjm?= =?us-ascii?Q?1+Ea68L0351X1kcYdGwLI2CruFeD99u68jabUWVlKXO7eBuQljsS8gSuusoD?= =?us-ascii?Q?EcnmyexqG+oSwPzJ/3NquZ14YCGLaavB81dUvYgbOQNwE5rf6sM8iQPf/0Qc?= =?us-ascii?Q?3qBw8gQrdMbhQRuRnx7s6HIMauw+geg5040JwgfxFvqqfQo/JAYf5Bzn1fDn?= =?us-ascii?Q?b2gcEwXKm6CJALAKZM2y3rw7teOK/25Ft+CsiEZhvZR6s5FK+ptXG/4WNjJA?= =?us-ascii?Q?8Tg6SMG0kuAgW6To01bAhjg6sqyulGReBFCLLABIe75KHafWpto+sV/UYmGY?= =?us-ascii?Q?RJkIL8uZRiokkoFzZ4EbIOnaCRCJlH9Nn2ESvs9PodyfM7YyMx9bQzrYGxVP?= =?us-ascii?Q?y8LmkEAC1dn3O/scpU8nA08QLbOVdKHT1yys2TVFgpyDYmcjc9VYy43H1abB?= =?us-ascii?Q?RyMMVcBGzsiXnquI2vikgDoLzDzYi40gezFPaSL73D+tBniaa+I+O31O/qs3?= =?us-ascii?Q?4B5Cyf9xxCbTNDgZ5H428tblzy806z8IDPujE1Q8rqbLcGx7SEqGxFKr5ciA?= =?us-ascii?Q?lKQYzHKi9+gNyC7YIkh1bUVCKiupOnGj7e7YDPKHGw88oaX5Lch7PvwSp/+L?= =?us-ascii?Q?bM4QoKz6bd9swHBdsbGoCtnmCYGq+w7rfTloB4b9+gyJ4DBvXzr4Zy72MoOU?= =?us-ascii?Q?Orif99rgc18LXWLCNQpndC/LtctxmffTylcxtXtE0rbQ/wnsgz1JLedu9uge?= =?us-ascii?Q?8xSRmdLjfFVpjU06Wi3zI5viu+KayOht7sqFLhSeIi7KPjeQn0Qx914kViXu?= =?us-ascii?Q?OJT8iR4OogiYO8vPVXJaHZIx36/ykk5u06vzfYi/2rUaihd0CeX8AScEULUM?= =?us-ascii?Q?HDJnE7myah+zbl6QITl5ddfneW0YQwgw8CuI7YjJ5WLu8/3hxvPdUe+YXhBv?= =?us-ascii?Q?pCxklyjAeL9bfeQMrW70jEwVLaVzbLx3VAfffJZPZit2DWT0zMm8wRnzeCsO?= =?us-ascii?Q?P0u8bFQ+ATh+5mCjfqdD+rksqCrCk95fptimNKNkxRJCy1tdKgv+8w=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b99ea9f-fb23-4969-981b-08da026d6213 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2022 08:10:04.7738 (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: 7tqO6GawyHoe84LG1ZaJb7rU5kg8pPMzmUCb86n4/gK8rtgR8TRgzgPgBAvkU1AgKeC7kkUftYCFAvuJpNNDYg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0402MB2772 Content-Type: text/plain; charset="utf-8" When the multiple checksum errors occur in chk_csum_nr(), print the numbers of the errors as an extra message. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_join.sh | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 2b77576d773c..375b087edc7b 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -1014,6 +1014,7 @@ chk_csum_nr() local csum_ns2=3D${2:-0} local count local dump_stats + local extra_msg=3D"" local allow_multi_errors_ns1=3D0 local allow_multi_errors_ns2=3D0 =20 @@ -1029,6 +1030,9 @@ chk_csum_nr() printf "%-${nr_blank}s %s" " " "sum" count=3D$(ip netns exec $ns1 nstat -as | grep MPTcpExtDataCsumErr | awk '= {print $2}') [ -z "$count" ] && count=3D0 + if [ "$count" !=3D "$csum_ns1" ]; then + extra_msg=3D"$extra_msg ns1=3D$count" + fi if { [ "$count" !=3D $csum_ns1 ] && [ $allow_multi_errors_ns1 -eq 0 ]; } = || { [ "$count" -lt $csum_ns1 ] && [ $allow_multi_errors_ns1 -eq 1 ]; }; = then echo "[fail] got $count data checksum error[s] expected $csum_ns1" @@ -1040,15 +1044,20 @@ 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 "$csum_ns2" ]; then + extra_msg=3D"$extra_msg ns2=3D$count" + fi if { [ "$count" !=3D $csum_ns2 ] && [ $allow_multi_errors_ns2 -eq 0 ]; } = || { [ "$count" -lt $csum_ns2 ] && [ $allow_multi_errors_ns2 -eq 1 ]; }; = then echo "[fail] got $count data checksum error[s] expected $csum_ns2" fail_test dump_stats=3D1 else - echo "[ ok ]" + echo -n "[ ok ]" fi [ "${dump_stats}" =3D 1 ] && dump_stats + + echo "$extra_msg" } =20 chk_fail_nr() --=20 2.34.1