From nobody Sat Apr 27 19:44:43 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a02:9f92:0:0:0:0:0 with SMTP id a18csp1557847jam; Tue, 8 Feb 2022 15:59:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJx5jZ9paSTK3hrfA4miECwoK3PXpLoq++a4Jl8JSwRWbRNn13jD4iRUN49/eQBFTrYQVcFU X-Received: by 2002:a05:620a:28d5:: with SMTP id l21mr4118625qkp.588.1644364751260; Tue, 08 Feb 2022 15:59:11 -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 h1si3667839qkn.309.2022.02.08.15.59.11 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 08 Feb 2022 15:59:11 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3532-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=F06G9k11; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3532-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1:3600::1 as permitted sender) smtp.mailfrom="mptcp+bounces-3532-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 EF72F1C0C58 for ; Tue, 8 Feb 2022 23:59:10 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 7918C2C9D; Tue, 8 Feb 2022 23:59:09 +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 136122C80 for ; Tue, 8 Feb 2022 23:59:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1644364746; 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=gcCDJzHNV6kcFpm6QUQWBx6GY1KwXHjb2MCAhKpBMzI=; b=F06G9k11DWc4KxbS3b1RbaqF34H2eltGk6oVP6/dGGi92vLaL//J5ItqjYrjpKo5FPPb2n G0Otre3yO/udyeipDmqzQ+wTMIm9+qW9OyK4eVlM8sHa9Ff6uH1LCGASLaz0VDiiVE03p6 YZ6SW4U9Fklvc35injMG1P+beQZT96Y= Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04lp2053.outbound.protection.outlook.com [104.47.12.53]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-27-HtPNaZ6oMKGF_8MtzuScjw-2; Wed, 09 Feb 2022 00:59:05 +0100 X-MC-Unique: HtPNaZ6oMKGF_8MtzuScjw-2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AP5CR+NK7NqaQmKmnGB1fStldrla7F8F5NqAh8PLgnyF0Ak1GnF8kXUhtOJK/Bg+Cu8BY4BdGcvpoMt3zza6npgs+kQAj0eOGpDUDi/vnTc/cTZifX3cc6zFPlbIgGnCaJJT6zVWahwin0aqxXGSna0lfUngF/JtvzY1WVQgjO+8Q6zTg6U1XXOYt6we8XouQHi1yLCid+Magt6n8HTaa9gBIzEXFWeRkgp+T1OyIi54VX5YmpBAXFip+aGI1SOuMWzm3/0poXmV67ojTqZRuzkkOBDz9bENE11GXuteOhQjJ8V+juiB2xrNdvymvOHC4jl6Ib9Ge2SPvN+cnOnAbw== 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=a26/8dAG+o98EF8E3cZi1/wwV7DYzSfMYnFb5dQLUqc=; b=ZTPIiVBExKZ6DGmWG5xb9yI3MhEhp+7MPOPQRC1mhiFJvI9VGThd71sfsmY3lQRkzy87eMFLzTbHrIjvb72I/qckeuebXB2y6AoVsWPP1GwSAJrm5qErVnlQZk1kwo37o3igTwbbg60FGkFSz60wrVVBt1Rkl+O4ihtnrQbHNt0TOZt1+pDgKlTQJVcPuEx6NtDiY09FXWWSGjRdrZU4Wc6YDDwDRjLgbjkmuGA3hhl30y/BX7Jj345bvHiniOKU/SzSDf0WG4uCr0TkkCi6pxC6LlPm0FGq4dk7bIpOov4g+OBSXlbH3LMCCdkmU4+Pz0fYJHFcIRETd5uBX91GSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; 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 VI1PR04MB2959.eurprd04.prod.outlook.com (2603:10a6:802:8::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.11; Tue, 8 Feb 2022 23:59:04 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::60de:f804:3830:f7c5]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::60de:f804:3830:f7c5%4]) with mapi id 15.20.4951.019; Tue, 8 Feb 2022 23:59:04 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang Subject: [PATCH mptcp-next v2 1/2] Squash to "mptcp: infinite mapping receiving" Date: Wed, 9 Feb 2022 07:59:15 +0800 Message-ID: <621a0237b6c15001e3590b27358dbb854c2ab6e8.1644364562.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK0PR01CA0061.apcprd01.prod.exchangelabs.com (2603:1096:203:a6::25) 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: ca31add7-7b97-4866-aef9-08d9eb5efc48 X-MS-TrafficTypeDiagnostic: VI1PR04MB2959:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:813; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 58TdH/S8Wvl1IxZ17uwuovBKIzHDtB8NLQICgqgxWfLbewwfubzBXj3ksvxkalQD6c/DOaanMDODl1MHOIVpg3lpmwXrjuvaXDtWjVS3l4GfosKguTkdcBqtRJeeHVmNQqC/qeFRQ4dXIsD2as2rqwFwBAnHLjswL+Sr4PwS3gbC8U0lxx6a1uedZ5seZ77lWNe9CwxjKubBlTsj4yKqa6P7K8ecw/TrzUIARQ46sHbUAAAHMBBu0s5sQluQTqhFd+xiX/Yj0mTk8NlU7abedhSCYGYbyS0h6f2FdZ1ckOvMiTjoffFL4eV2Gji21u/aNDZGrFZ0PAAr786F2gCM9mXkap3NmN4FSH1ymewdudysotKwKTfBsAwBd6foU/b6g0EcUsHjcMhj+FvMzfkjTpjs/mk0Ow97sBzqwX+NSk54fduMm+gdnQ5OQlMvt37PdPAlyVKBJPPMgkVXKTxttLQNWtcrDYjFSiNfI6TqE24/pxv7yADDdvdnyjPxhq8/FI2Z5D4b+x83eocEAMTFnvTqEfpQoHg7kA4ghw36IEsmrfYbWvaYo4scJGYM42ebiMBozurUVLftzdiUUu907yvO/usoPVotnii3+cwxxILM39tD/yvO0YvipozGCGSKd06plA91di3TzMKEKQ3vBA== 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)(8936002)(2906002)(2616005)(5660300002)(44832011)(107886003)(6506007)(6512007)(36756003)(38100700002)(186003)(6666004)(86362001)(66556008)(508600001)(6916009)(8676002)(4326008)(66476007)(66946007)(4744005)(6486002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?tln/aBrSlNQKbxwcAi1E8fLb/JQ91nuB4uU2FaGYrBCu6R/tRvhVnxFaQRrE?= =?us-ascii?Q?/ACsxXqC2mWMKgRcyR1ZqLSmL/WHumTZU/IQo3kZDTYqDq8pXmh0pw5NQ42M?= =?us-ascii?Q?jIysixpfKrM6bWex4lV4uO0TjoUCzw9Rh/c/3alnTKuOWHyOZyHXoBt6mJ5D?= =?us-ascii?Q?fz3cHv6PISBciguRzMeLCrcRNDanoNspB+zL5+otd3TXIpQ0YbPrD2X60ZTQ?= =?us-ascii?Q?kuYohKkj30UMWSvvjgliSOmk26jGswnUIJiY+iGbkeKoknGNuDxYsuQoeIRL?= =?us-ascii?Q?linUg3rpOwyJcd98jRJdW4NiYeTmYMAI+msOTY7ACdoRy5mIFcRKZv52JgUx?= =?us-ascii?Q?uGuqbqfHyD/EIO2G0i+V/rmN4oPdViTEhFdiCNRNKocPis2XvDObwYX6Skfw?= =?us-ascii?Q?B57KaMdKXAKXi0tqPHgOrk+BTExxE3iHUflRrSH7IVqThBHaAUIG1JolEpbu?= =?us-ascii?Q?J8Dg8Bgdfre/ev1jqE7bH0gJLSRWvaqXz28NzZ2+x3snY4XpFywWgllG847f?= =?us-ascii?Q?MJq6R7eDcvjw/86WvO4Xv6dxEzvnG9xnFYlmVhuIovJGAx+NbmAGcnBFQNOM?= =?us-ascii?Q?WfzBX29BRiWXlN+SSGAMIIoY1I/yC6VqFWCQinTxQQj/AYdlHZUdF48KLAoD?= =?us-ascii?Q?BQeJtdfmmmRMghUZ8rFnYi3y/673eKZXFrnMfqWSt3aWl/AiCFEsLQ4uCj53?= =?us-ascii?Q?2GH4ayvNGRRFVV6qFFH5jq1AGCtrvvbPw6eATH71A2fQdqsHADXX/wMIu81r?= =?us-ascii?Q?W74OCQD6nxdfVHYlzMU8VK2ze9q+MgqsJi/7m/r/YHKr6vNcSc2ta9TprCt3?= =?us-ascii?Q?XzrhB8ttbHa9S8H4vXJJLKJpFzhAvZA7eRdjXWdKp9O3xgwo9fArgBrUdaqw?= =?us-ascii?Q?UtiCNABQxBxO3MPL3UOsnV+zuYtQskQ4jfK1vzBcdazqgcGvDkRdVqlyF2q4?= =?us-ascii?Q?LgmmzLWRP3PU1G5wMB/cvmm2RfWCUelwFFIRYqUcAb4XRTM1h1P6HYsITh3W?= =?us-ascii?Q?dFUILAhXYIcu8L8c230KLuxqdk+y2l0FMfq4X0u2T9wFqGpyvHtl976QHAWz?= =?us-ascii?Q?TyuL4N9A7Fu3b3W1BtbJ0W93FBJkML6AvQ4mbuQXiv0NZuvEqLUlwGoeOixc?= =?us-ascii?Q?VJwHKNrVIqDDO1ZrolUNnJhjoiCq+4ScUsIYTcpnvbQrJdruX6DN5cHtjats?= =?us-ascii?Q?L63Lv9N6A7HYcTTmp42eoUW3GF2LidoNQHAzYoyVlh7DpGqoldCFw1j5bbyo?= =?us-ascii?Q?yM0pLN4NUGleikMHWnWwIo+FYZG8ahqBA9wiFSfmIJ4uo6frNi5t4AxRfAVa?= =?us-ascii?Q?dRWnvcQ7o+21iZNadD1JKijOKcwGKor7265PwJtePyLbD6obBdTSIoTEgYNq?= =?us-ascii?Q?TfXFJ0BomgWDSDEieghzLuDAUraEGVxgc/Kay0MyS9N/4cDByHZeVIUW6hvP?= =?us-ascii?Q?1p56U2IK6hWHFsYUiwRbF3hdT64tZJVlq7u+FrGVlBlzfIWZ6Axt5+rv6YU1?= =?us-ascii?Q?Ag/jqVG1NMrmnTQ2jDORFDOGIXQ+SRv4tJZVP4zX5hvwkNW/D1NVat+FbxEM?= =?us-ascii?Q?zifJG+AHoJM5vusPxER4eOxx9dcUb1MSOBvHEPR+xJ4EQq5aAUiZfTlsvbZp?= =?us-ascii?Q?ukXRTcu5fLst5qGnhy/5FtU6q2tjAHSKNYyOHsA6Hd4fh9JYoZ/O38VsgBOC?= =?us-ascii?Q?uMLSpwuPynLTqmxhjPVfkJEAD5o=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ca31add7-7b97-4866-aef9-08d9eb5efc48 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Feb 2022 23:59:04.2648 (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: hzSPdlvc6KK3ORjKGJ9DUwmk8ixs1rhHqzz4bn0vjq4NnuzCVy8wC4vmo/t/hW7oA8ktt9GllVrFb6bSaJlqWA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB2959 Content-Type: text/plain; charset="utf-8" Print out the infinite map received info. Signed-off-by: Geliang Tang --- net/mptcp/subflow.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c index 485f00dcaf84..ae4d855f3c2f 100644 --- a/net/mptcp/subflow.c +++ b/net/mptcp/subflow.c @@ -962,6 +962,7 @@ static enum mapping_status get_mapping_status(struct so= ck *ssk, =20 data_len =3D mpext->data_len; if (data_len =3D=3D 0) { + pr_debug("infinite mapping received"); MPTCP_INC_STATS(sock_net(ssk), MPTCP_MIB_INFINITEMAPRX); subflow->map_data_len =3D 0; return MAPPING_INVALID; --=20 2.34.1 From nobody Sat Apr 27 19:44:43 2024 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a02:9f92:0:0:0:0:0 with SMTP id a18csp1557914jam; Tue, 8 Feb 2022 15:59:19 -0800 (PST) X-Google-Smtp-Source: ABdhPJwVdIV+TdBLpo9PLYOWE3CmP6HEtG1Fsyk2UOXEnHs1ykI4i4JCOuN1O4CEZQEfrnenYzoB X-Received: by 2002:a17:902:bb83:: with SMTP id m3mr6802607pls.114.1644364758962; Tue, 08 Feb 2022 15:59:18 -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 z4si1181665ple.611.2022.02.08.15.59.18 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 08 Feb 2022 15:59:18 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3533-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=GWWdDU+V; arc=fail (body hash mismatch); spf=pass (google.com: domain of mptcp+bounces-3533-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) smtp.mailfrom="mptcp+bounces-3533-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 407053E0F54 for ; Tue, 8 Feb 2022 23:59:18 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 49E9F2C9D; Tue, 8 Feb 2022 23:59:17 +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 71E8E2C80 for ; Tue, 8 Feb 2022 23:59:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1644364753; 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=29pTi2M6pXySMsZcAeG4cIfGAH8Qnaxl3tAsyOa71BQ=; b=GWWdDU+V5L6KoAdZQhRqxdKMX0IJxraUA5budobgw6S2/KnIiwb15vzODNMb/bdaiTxZcB 1JqUaWnPu7Layaf3DP63/ARxbytmGsiLLULroGixrLS6Oga9gsQDztVNQN5yl10OljBEH9 Uo3OII4u1NHoCd2qnBvFQD4UbhdrMNk= Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04lp2053.outbound.protection.outlook.com [104.47.12.53]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-23-CFkWtOoJPKqJ1gKO9-uI4w-1; Wed, 09 Feb 2022 00:59:12 +0100 X-MC-Unique: CFkWtOoJPKqJ1gKO9-uI4w-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RBJUOrxp4RGkMKHoNy6ECw/ytUyhMVV4DtPUNIzvSpKR6DP515M3EweSDo+yLTNu2/O6kr9miWT4bCMozT+F8W2ZmW46E32nzhAwSini+FK2oNvWgpM0Fc0kRHIPKtv4Pej8k35XZFPttyVZE8x1YEjBL6Xz2FHwU9WiVP+cAlyo3Q+JBV3WMbsiaRso+FncHC5oFmTdLDSCorlmKWREqqH2R4jpJBrWY4OhGPSi4/In/6M3YeZk2PRSdotznk9l2GIzz5YI3IWUR8uLsPnq5+nLkqWN2q5dgzrlFz0LCSPyZ+FRJWPMw4Yup28NCyHA+5kmPLB4QKiMnh8lxfJK7w== 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=pPJz6Mvp6guWd8GRNWsM4x32ViJ+GGJjbLgtQ0zR93w=; b=oMvdhI6VJBo4S5dRIktMyv42ECg4EFP4GJFyJUWsA8IF9UhEEXPKszAB0W4rLJG08bwSv+raTgwJZneNQdO1chjNwxsbyRFn1jeGMfYLReiCBoKXzAAnu40n+s9IflVRyrStOnbua1J+YUMI6ClAIdq1NXQxdYSbyQ40Fs8J7Mg1bn+e9RQiGLIeBA236KQlkIL3ZqQEC5a5LaZHPBMB08CoXJcbmSBXdKsceqbzOoYLvMZkkbKZ9YyQdvDRMGAJ5A2CTb0j5TjYtjOUFQicyrcbAyHsU93P/C7uby0e26fhlaL9Uqf+pAycBxtpFwXJ+A+dT+o8qZmvq2Ae1KIMvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; 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 VI1PR04MB2959.eurprd04.prod.outlook.com (2603:10a6:802:8::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.11; Tue, 8 Feb 2022 23:59:11 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::60de:f804:3830:f7c5]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::60de:f804:3830:f7c5%4]) with mapi id 15.20.4951.019; Tue, 8 Feb 2022 23:59:11 +0000 From: Geliang Tang To: mptcp@lists.linux.dev CC: Geliang Tang , Davide Caratti , Matthieu Baerts Subject: [PATCH mptcp-next v2 2/2] selftests: mptcp: add mp_fail testcases Date: Wed, 9 Feb 2022 07:59:16 +0800 Message-ID: <846d7cac1f134fe9d3b6e8ac2b0c0ab47defc341.1644364562.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: HK2PR03CA0062.apcprd03.prod.outlook.com (2603:1096:202:17::32) 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: 893af25a-6366-437f-b886-08d9eb5f0055 X-MS-TrafficTypeDiagnostic: VI1PR04MB2959:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1051; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: d7uoe51xJIfsbWDciY2IAE0ALCeOUZnOoo7Et6b20QwIJnMaAGEaJ7ipSpP8lhEU9M8FcIri5vfPanwsSEnQFYn5U8T1JaVe6vm/MkvUEihu91eCP8ZjF6EOd4CtjUfHJCH0UEehWP95sGDWzTEfE0btGadhHhubLlrWdS05IDvzgcDv95YPhBhRKsctrBaS+SPgah9A2OtdfGpvaYMpjFQOPZZp/1XHnZ0EcYD10oSBzfYLgOUoQNcz+p5ZNwUCS3Cn0Li88kkScRlZWixHHhUUb/Zaf8k9P3l4wjg+A16/xp2omtjS8M6f+Ws68/GGPuNsHyO5zm4cCeawID3KEmwrvTFqmqH5n3+0B7YflP1IZO3zFgOKa/8tJA/FTxKqlgmufuGRr7r5/uA0hb0SLhwbZSgSY7/sgWPvoG1lqN3PAzCLN5eAa45egdQIJmwvcoKnonU05gKTgIajFWPeUaMVgbBYNPqi1GZS4vUMIrzjzG03RjGj9bh6YzHjMXMbwbPauSxRNxv0j7kSs8ZxzDVMSSUSYG12iohRRK1gwEDHdQRvMXfdHFeHYXmQ7lnVMmFUQZtv6lUiwG9Loo0orQN3d3MP42GT+oig0tK8Xm4EY/X8A7Renk9ytjaRGZCuFDm8NcBUiE9PfDOVN0hQdg== 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)(8936002)(2906002)(83380400001)(2616005)(5660300002)(44832011)(6506007)(6512007)(36756003)(38100700002)(186003)(66574015)(86362001)(66556008)(508600001)(6916009)(54906003)(8676002)(4326008)(66476007)(66946007)(6486002)(316002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?7I7SezyE8tXg7PcXvlzMDCOkjkjhyJzm3LcpILcDu7h+0RNqskNpFo2GlFRG?= =?us-ascii?Q?PREbQmHD75ndDGXh2gFPZ8/akv1aVnS+n17dTRuI/MbwC5yob8CP1eVhCRti?= =?us-ascii?Q?7iyBJDq8lw8rZWNBafFtbbQtFoiGZFZJ/6N02p2Feqa+U3vuziKT5/EKguGn?= =?us-ascii?Q?XRsbij4Tlo1QO1Mo9pqHJQIbsd5NOAMMk5DZiIiWmi5DT8QnS3uoBz7PQqPl?= =?us-ascii?Q?6xx3jInyvaW5JlN2Rkdhxuwu4Jn1wChKEW9XSb9567eFeTmPgJAE5MDVniL4?= =?us-ascii?Q?82plsIR0aVic0fpYJ8Mvqo/JgytZrlcgHUUD/tjl+bCgmPxUFpP/QmoQOOE1?= =?us-ascii?Q?7BN54dqPbfUdXVI8KjepZ0l3BAAykQRYnXjE6+omBoGQVtxalnBNL0QkU2nj?= =?us-ascii?Q?3tWhF1UgxkdIievsnEotfoCctLNzI3ACSXP0hxYiAR4jypa3ktpc3aAEa29M?= =?us-ascii?Q?0+6yA57gh6f1QyarRPH275smwJNy4Pzxrr0/N3yavAKFFK0ArxyC6u+Y62RC?= =?us-ascii?Q?vsYrGFyIbDPzW/9Sr+q0DLQ/s37euBiA5W8dtIn87HxA8+jzWHACA9bgE+Ic?= =?us-ascii?Q?i+nS+4NsFbyHrL2cwKk0k5cBZBYDkExwMFPaLRC61FuEK1yysd0yDpzziS0E?= =?us-ascii?Q?V06ER22Ezas8RFGaF6lZ57+iqnBy9kYDGyjLjZcQ3LYKdVIDp+GrVJ2LXRc2?= =?us-ascii?Q?weRHONJgFfxzj52VtCq7EPOb7mnvMUGuLZPeIoO5JTnthWI9e95GH4CDM/3p?= =?us-ascii?Q?jOJ84qDiiGJJAxDLaKO9gL3lVjUp1fiVfzFb03Fh8DFtfv3uj/IjG0z+/wxP?= =?us-ascii?Q?L6+EmgAwh6E7471gsvFEQb0O7iBLX1iGMwfLfBoJyMOCMS4SIX3r/jU48Qwt?= =?us-ascii?Q?CSY3MkpmRsoZOX7lulSXtAnSfq0jDA7v23J3AMGKHt6F54hCCTRwQwdz/8OT?= =?us-ascii?Q?VR78tWYnXbLAgKBjX4uS8bPJkK/1VWvVByG2KYCA7rLtcxjBD5zormfadXMl?= =?us-ascii?Q?RNQ7lRB5JJi8lDZJ9fOHf4fid8p61Y+G3wxclBF13IPodOxEpCNYROH3BC30?= =?us-ascii?Q?diS+/5MsmL2UUwiffFv/aZWScxpeqK2jf5cgX/hfqiel3lwKaMTy+mLkwTrw?= =?us-ascii?Q?e5agU7YMHWe0HExhKW4/3FH/zx+ma1p0AN9MxmiBYkoI1JDTXaOo7seHDyng?= =?us-ascii?Q?TZIMMxr/RBZfE71hADhr+8d18k0ylWcFohub6gdRXR3pL7tJtfZaLh9yb1sF?= =?us-ascii?Q?85XcuF/OYFiadd7WNpCLzlHIlQgYT4Nx0wcfMCT5wvmNfnQwBiS6ecQcvUF+?= =?us-ascii?Q?Qs/aDQVTwJezbroGMyaxn7q3Zjwnys6NQOFHkDpynXuEW6/1AO+qqQtCFWdn?= =?us-ascii?Q?Xz1LACx3Lsb0GqZX+Rzi1eb+ES+ERCJLZEnuNfLmKfHeBrgs8npuTu4F9Mxv?= =?us-ascii?Q?hht/sw+uZPXEtKkPcOk3mKnAQjkPVVZc+/90+DBq35Ekn8NNZynFrPZWDoFN?= =?us-ascii?Q?wWxVQjDIgGA14IdODM1pDxdyAf1ISp7eYMYMC276aQX7bxUVN5IJOiYbx2FY?= =?us-ascii?Q?1EN7zT3MnwHbXcbCVgcR72nviTlaZNCGFm4HBzYovQZzmHDSNMqcr8p2EHWl?= =?us-ascii?Q?xByNpeIZDxlnX6Gk3dBPOjvQRjqacbRILdWKlgS6nF7O6LgZ9olet3gbGhvU?= =?us-ascii?Q?K337G8JG3w8/k59Cn95wWbG+gWQ=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 893af25a-6366-437f-b886-08d9eb5f0055 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Feb 2022 23:59:11.0924 (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: W+UxUByyW+o0iLL14gBwYw075Y0gz/b1V29/asCyBTEaFv7gFjeywKzH+MtdlnLZifCVgEYl84ju3Ewb/QFCaA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB2959 Content-Type: text/plain; charset="utf-8" Added the test cases for MP_FAIL, the multiple subflows test for MP_RST and the single subflow test for the infinite mapping, use 'tc' commands to trigger the checksum failures. Suggested-by: Davide Caratti Co-developed-by: Matthieu Baerts Signed-off-by: Matthieu Baerts Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/config | 8 + .../testing/selftests/net/mptcp/mptcp_join.sh | 142 ++++++++++++++++-- 2 files changed, 136 insertions(+), 14 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/config b/tools/testing/selft= ests/net/mptcp/config index d36b7da5082a..38021a0dd527 100644 --- a/tools/testing/selftests/net/mptcp/config +++ b/tools/testing/selftests/net/mptcp/config @@ -12,6 +12,9 @@ CONFIG_NF_TABLES=3Dm CONFIG_NFT_COMPAT=3Dm CONFIG_NETFILTER_XTABLES=3Dm CONFIG_NETFILTER_XT_MATCH_BPF=3Dm +CONFIG_NETFILTER_XT_MATCH_LENGTH=3Dm +CONFIG_NETFILTER_XT_MATCH_STATISTIC=3Dm +CONFIG_NETFILTER_XT_TARGET_MARK=3Dm CONFIG_NF_TABLES_INET=3Dy CONFIG_NFT_TPROXY=3Dm CONFIG_NFT_SOCKET=3Dm @@ -19,3 +22,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_FW=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 90a6adc36490..686c54276ea9 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -17,6 +17,8 @@ capture=3D0 checksum=3D0 ip_mptcp=3D0 check_invert=3D0 +validate_checksum=3D0 +nr_mp_fail=3D0 do_all_tests=3D1 =20 TEST_COUNT=3D0 @@ -62,6 +64,7 @@ init() done =20 check_invert=3D0 + validate_checksum=3D$checksum =20 # ns1 ns2 # ns1eth1 ns2eth1 @@ -167,6 +170,52 @@ 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 8-bit word at byte offset 148 for the 2nd TCP ACK pa= ckets +# 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. +# Because the MPTCP checksum, covering the TCP options and data, has not b= een +# updated, the modification will be detected and an MP_FAIL will be emitte= d: +# what we want to validate here without corrupting "random" MPTCP options. +# +# To avoid having tc producing this pr_info() message for each TCP ACK pac= kets +# not carrying enough data: +# +# tc action pedit offset 162 out of bounds +# +# Netfilter is used to mark packets with enough data. +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 + + check_invert=3D1 + validate_checksum=3D1 + nr_mp_fail=3D0 + local i=3D"$1" + + ip netns exec $ns2 iptables \ + -t mangle \ + -A OUTPUT \ + -o ns2eth$i \ + -p tcp \ + -m length --length 150:9999 \ + -m statistic --mode nth --packet 1 --every 99999 \ + -j MARK --set-mark 42 + + tc -n $ns2 qdisc add dev ns2eth$i clsact + tc -n $ns2 filter add dev ns2eth$i egress \ + protocol ip prio 1000 \ + handle 42 fw \ + action pedit munge offset 148 u8 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" @@ -185,6 +234,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 @@ -245,6 +300,19 @@ link_failure() done } =20 +get_nr_mp_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') + + if [ $packets -gt 0 ]; then + nr_mp_fail=3D1 + fi + tc -n $ns2 qdisc del dev ns2eth$i clsact +} + # $1: IP address is_v6() { @@ -446,7 +514,7 @@ do_transfer() local_addr=3D"0.0.0.0" fi =20 - if [ "$test_link_fail" -eq 2 ];then + if [ "$test_link_fail" -gt 1 ];then timeout ${timeout_test} \ ip netns exec ${listener_ns} \ $mptcp_connect -t ${timeout_poll} -l -p $port -s ${srv_proto} \ @@ -466,13 +534,19 @@ do_transfer() ip netns exec ${connector_ns} \ $mptcp_connect -t ${timeout_poll} -p $port -s ${cl_proto} \ $connect_addr < "$cin" > "$cout" & - else + elif [ "$test_link_fail" -eq 1 ] || [ "$test_link_fail" -eq 2 ];then ( cat "$cinfail" ; sleep 2; link_failure $listener_ns ; cat "$cinfail" )= | \ tee "$cinsent" | \ timeout ${timeout_test} \ ip netns exec ${connector_ns} \ $mptcp_connect -t ${timeout_poll} -p $port -s ${cl_proto} \ $connect_addr > "$cout" & + else + cat "$cinfail" | tee "$cinsent" | \ + timeout ${timeout_test} \ + ip netns exec ${connector_ns} \ + $mptcp_connect -t ${timeout_poll} -p $port -s ${cl_proto} \ + $connect_addr > "$cout" & fi cpid=3D$! =20 @@ -632,7 +706,7 @@ do_transfer() return 1 fi =20 - if [ "$test_link_fail" -eq 2 ];then + if [ "$test_link_fail" -gt 1 ];then check_transfer $sinfail $cout "file received by client" else check_transfer $sin $cout "file received by client" @@ -681,7 +755,12 @@ run_tests() =20 # create the input file for the failure test when # the first failure test run - if [ "$test_linkfail" -ne 0 -a -z "$cinfail" ]; then + if [ "$test_linkfail" -eq 3 ]; then + if [ -z "$cinfail" ]; then + cinfail=3D$(mktemp) + fi + make_file "$cinfail" "client" 512 + elif [ "$test_linkfail" -ne 0 -a -z "$cinfail" ]; then # the client file must be considerably larger # of the maximum expected cwin value, or the # link utilization will be not predicable @@ -694,7 +773,12 @@ run_tests() make_file "$cinfail" "client" $size fi =20 - if [ "$test_linkfail" -eq 2 -a -z "$sinfail" ]; then + if [ "$test_linkfail" -eq 3 ]; then + if [ -z "$sinfail" ]; then + sinfail=3D$(mktemp) + fi + make_file "$sinfail" "server" 512 + elif [ "$test_linkfail" -eq 2 -a -z "$sinfail" ]; then size=3D$((RANDOM%16)) size=3D$((size+1)) size=3D$((size*2048)) @@ -719,6 +803,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 @@ -730,8 +816,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 @@ -740,8 +826,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 @@ -820,6 +906,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 @@ -856,10 +944,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 @@ -2164,6 +2252,27 @@ userspace_tests() chk_rm_nr 0 0 } =20 +fail_tests() +{ + # multiple subflows + reset_with_fail 2 + pm_nl_set_limits $ns1 0 2 + pm_nl_set_limits $ns2 0 2 + pm_nl_add_endpoint $ns2 10.0.2.2 dev ns2eth2 flags subflow + pm_nl_add_endpoint $ns2 10.0.3.2 dev ns2eth3 flags subflow + run_tests $ns1 $ns2 10.0.1.1 3 + get_nr_mp_fail 2 + chk_join_nr "$nr_mp_fail MP_FAIL, multiple subflows, MP_RST" 2 2 2 $nr_mp= _fail + + # single subflow + reset_with_fail 1 + pm_nl_set_limits $ns1 0 2 + pm_nl_set_limits $ns2 0 2 + run_tests $ns1 $ns2 10.0.1.1 3 + get_nr_mp_fail 1 + chk_join_nr "$nr_mp_fail MP_FAIL, single subflow, infinite" 0 0 0 $nr_mp_= fail $nr_mp_fail +} + all_tests() { subflows_tests @@ -2182,6 +2291,7 @@ all_tests() deny_join_id0_tests fullmesh_tests userspace_tests + fail_tests } =20 usage() @@ -2203,6 +2313,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 " -i use ip mptcp" @@ -2242,7 +2353,7 @@ if [ $do_all_tests -eq 1 ]; then exit $ret fi =20 -while getopts 'fesltra64bpkdmuchCSi' opt; do +while getopts 'fesltra64bpkdmuchCSFi' opt; do case $opt in f) subflows_tests @@ -2292,6 +2403,9 @@ while getopts 'fesltra64bpkdmuchCSi' opt; do u) userspace_tests ;; + F) + fail_tests + ;; c) ;; C) --=20 2.34.1