From nobody Fri May 17 05:26:31 2024 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2057.outbound.protection.outlook.com [40.107.14.57]) (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 5E3301097B for ; Thu, 17 Aug 2023 14:10:44 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Uvl3zeAQSq4OZDbsvHZ7dH4L39mDFmIZHoim5C632m4jbqcabINrpW2/yYATMGdj+zecKNRah/IaeUEx93kzUAmH0N2OkhO5AmgFML+kycujBGIITlXrWV15330L7oMzklpyrLhrfmkbo1jBPzGCmI2x3W5Zbv/vNNrEGpgNabSZnhCAke0PbYUj9i9/5oth4f89yug65Buf66fwODC0R/LVMs9bVl1h0qqdl2WyeRMiLB7vsm9VAGruA9OFkBvyCriY2Iw3jwC+0YfKnFoISFwAMd1UFCV3MXEGtnKj8KSfvB45OVv1dZ7yAsSRzP0Dsj1GQF0cFbwQq1myzoFCXQ== 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=NSAF9pVPQMGFCRRIZ2CWkJOpmYr2QAARJNPwTMUnHq4=; b=QUviuZpKOONpgSALuQNAo76Vk8c+emkLr7zLqoewo26ivF7AXbD6hZ7eUXLKzs2+MkjZoYjE3R4xAFpP9+b77fm0mVITm/u3VPALlj8eUfjR5IDz/ZsSz1ENz8MxIYO7Za/fj2Gfb7eHp0CHJbbFiHsTPo+LuRS/329bF4p4vBMxGC6mcb1INxVkSdv6b97RhYhVeQyBtwLrDMTenvz3i9WUTLRmGXJXeCM5AykNXIsi/1WwREV9dCzDnG9c/D31VfeB5QFb2yuWA7rtvdohrpM5pL3AXIuO8HEuFe3P2XX5sQ2qeUd72C7jdVOVvSmtYAwkrXG+x4195oNu16njPw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NSAF9pVPQMGFCRRIZ2CWkJOpmYr2QAARJNPwTMUnHq4=; b=bLSoabtCh3L9tqjIgFphYn31mNlfQcq75ZqzPg0XaDGbAYkK2qmn/ZtAH3HM+Mr4TZ8jcdO69WgvFODq7Gk9TmBe5qNEfNflyzeg3AuP32XCMbY/7twiSnZ9CY6DPULTcmxOPBaZft+Jj9a52i421j29EiwPdlZhtypygmSUPbZZzriTyz+SCYX4ZBpus0FCzwCo/L5OQmi48i/Uer04sgM8W2nciHrX8WtiYOy2IZZtCguBqgahwTzk71BpZ2VZ/P0B5Z+Uh9ufA1GR0JvgMwYGHiUfMVtqjiqYSPMvaula/HGMMefGNwnx5tfffo7EzJfmm25mb/uXRffySJW6qw== 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 PAXPR04MB9057.eurprd04.prod.outlook.com (2603:10a6:102:230::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6678.26; Thu, 17 Aug 2023 14:10:41 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::2867:7a72:20ac:5f71]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::2867:7a72:20ac:5f71%3]) with mapi id 15.20.6678.031; Thu, 17 Aug 2023 14:10:41 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang , Matthieu Baerts Subject: [PATCH mptcp-next v3 1/3] mptcp: allow creating id 0 subflow Date: Thu, 17 Aug 2023 22:10:47 +0800 Message-Id: <2fd9705f3100956009881666fc0deb65bcf2cc6c.1692281317.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYAPR01CA0240.jpnprd01.prod.outlook.com (2603:1096:404:11e::36) 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-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|PAXPR04MB9057:EE_ X-MS-Office365-Filtering-Correlation-Id: ae0d0bc9-5849-4047-cd06-08db9f2bbd52 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CK2UwE4JMYET3HKIBpgufuctCgPsZ8mH4XI/P3Vnyh1FKXDb5I9M7RzPj3rJoYreYIsuwhVJg0mIuaTfaWw1KBX6K3YsCHwcBIKgZOSIdAYhd5zhO+aJ0UOd294f/6VsslHvL0qttwozM/OdlB+iOSXFK7axduhw8LdUZnFVPoQ+kwRAX7qWDVz30wgJuxx5Ggr7CT6I1ek6rcTaiYmoKAO882X0egfAdXjJwMbs7vX5IXEMG7208rVJdq2O+Mh4hyW0/f0wrDFq7wIUXsAilKJA7m/GhFA3c3TVEEuhFtTLDxbt216/3HduHXQMtXJFZhneqhosnUmDpgxzPbY0EGE0DoV1lBMsZ5b0kb+MBa2wvH1CyplVjfaSVFlUejl0GFyzouy5sIIw7psCznfcynKGWY6fAl1nopW1Rvb5eNZwDEyK0mWKMrtwqOHaKM1WOw3o2yXZw0tTjOM8p4lo+rvvwp76jvV3g8cBv3dEP/V9etJ3FUJw3ZTtEAM+ysTiC4ce3QAcRMDgU5Rm+B7PCZg3e3rw+9b1LrVMttaKOcFkdqwZZ81UUrv3aBraqXGJ4sWLob8k4vyhRacxVHjIMtdb+qKaD6bHqAqctqvCDFE= 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:(13230031)(366004)(376002)(136003)(346002)(39860400002)(396003)(186009)(451199024)(1800799009)(2906002)(83380400001)(26005)(86362001)(478600001)(6506007)(36756003)(2616005)(6486002)(6512007)(966005)(44832011)(5660300002)(41300700001)(316002)(54906003)(66946007)(66476007)(66556008)(6916009)(4326008)(8676002)(8936002)(38100700002)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?piRh1uwEX2rdJ4PXJLlzycXeXbEbMc1cIMAYyD7VF4ztJe0XTnh5WDMQkoIr?= =?us-ascii?Q?ZmJkd5uSPMShXVJq+44NKgjn+GqDncUg3bFdFLM/ubtQJMqfps45i99G0ell?= =?us-ascii?Q?U0YUdssCy1zi1vwb1d+Ucw+XSMS/1fE+xGynVLDA9LlpYj9hC4twO4Az0Wen?= =?us-ascii?Q?uDIr2jcR54nygrn1QXg5N7ldcD93oPHTZC0AsMCiaAmhQ7orCdNYr7B2Zn20?= =?us-ascii?Q?rUCNSI4zcDV8pDAn9xxnj6E6LVCov8dxRTRpmUvTLNeqNbIh71MlpLqT+Sco?= =?us-ascii?Q?IMpr2YEa6XZ/t2Ht6yf6lxnYAeOd9ajEj8NcUMhrYEb8JHn5ZKWW2+rZlwvr?= =?us-ascii?Q?H+sq2vwr94aQC46AG5Q5/lXnIeM/NL389IEdQbeKokk9bieeqdJRA7UWrAfA?= =?us-ascii?Q?Gw8r4EIVKDkIQNDYroIlW7EHVkKcQp/nddn3Bnpl5Sz+puXE5uksSDFHjXji?= =?us-ascii?Q?aY5TSEwFefK3vRnvtzVENGafl5NoPv4gHXXgtoheRe5eKXQa0ISye8au4vN2?= =?us-ascii?Q?CWwoJSeLdyRjQ///Sz5H6+VUvvFFQu6tEpfwCjH5/HD0kwCcDyHcUVrDgvxU?= =?us-ascii?Q?FZh6wZoeYi/ECebsqjSGFj1QtIl+0EvAXaNnKy/7MPv9fbDeBpumvnqyw5Hj?= =?us-ascii?Q?m5pGhvN45rPdkVoIGLVLzImCOds1nUqOI3q3p4E0S7OzyMihCleti3ZbzVn0?= =?us-ascii?Q?nX/g2FPIpJLxtKmmdBlp5RA/5iAIKMMiKdWaK0PlHMcP3qTL40YrKrakeohY?= =?us-ascii?Q?MrLPiOjPvA/e9Knoo2ZiAd+s6k4vLbUQtS86fa1Tx9zX7JvbNbY7Z7e6XyZQ?= =?us-ascii?Q?2qVP9s8/DWSyF5Q+mylT/xnCBcWmCeQMqjuDn/qk3dB6/YCv+76lNbac34hI?= =?us-ascii?Q?MemYWZZTqMRi/GK+03tSWW5J+IabGfTzxka+6+4+42RiUIafwZReKangHwKM?= =?us-ascii?Q?jzT55/ClmBDBtpCOTgSey6Q31j2MIo5XE0XM5SdvKhc+Zyv3tzQz8/ArJf74?= =?us-ascii?Q?BHhf1d5jtg5EGBtwRO1eMQ0v1q/n3wwTa/getAXwEWLLX9NczLQiU2mRSegx?= =?us-ascii?Q?dAY9nbHH2vb18FneZKjtCDOf1rA5nBS7g4B8ZVvMrdDMRck6Pl71GU+78GEL?= =?us-ascii?Q?IARUj7tG89XtSrsLN3imke4iNK7LmBb6WbS+lXRqGbOGe6XWMlyZzC627o6W?= =?us-ascii?Q?jGKxYecK7zokgf/JUzjNw/kNxhduIJfITt5KmwBAX3j5f91CVTxCliRRcbsk?= =?us-ascii?Q?ToXdJ3/pvP7K7XAM6fjjzEoFRX2wZ41GBvJlmJqGGsEP2WrwWnTikB5BHnHw?= =?us-ascii?Q?WxdISMx9v0VIm2iuFtDj97LevC0FPIxSQa5VaDy94QhISo+NIcvZW9t1ZHbU?= =?us-ascii?Q?03nm/ntnKutbMrg1pXxFUiOOaO8k7MjRodqJII8YgyLuS7mZJidQmWT3RGSo?= =?us-ascii?Q?QRkp8VL7AYHBOloB7lpaMYVRGY9E4WeX7KrGEBi/naFSGSorUAucT5B5jyji?= =?us-ascii?Q?ye8c2k94dsAfzGfjvq+XbnqZSBeOdAgkcZUGEcqUwColY9t1/IU7OAx4aExe?= =?us-ascii?Q?4UewJw5Ritpj7Ym6ScMPMY/IwAQIwkgPMza1xJxB?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ae0d0bc9-5849-4047-cd06-08db9f2bbd52 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Aug 2023 14:10:41.3172 (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: Zd80LCPK2Wvf5NG/dhMFvUq60pgvcQnoKOC6L55F4edaW5cnBPbPA0e2U7BPv6tdhO5+kMazZI5XLAqyr3VWJg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9057 Content-Type: text/plain; charset="utf-8" This patch drops id 0 limitation in mptcp_nl_cmd_sf_create() to allow creating additional subflows with the local addr ID 0. There is no reason not to allow additional subflows from this local address: we should be able to create new subflows from the initial endpoint. This limitation was breaking fullmesh support from userspace. Fixes: 702c2f646d42 ("mptcp: netlink: allow userspace-driven subflow establ= ishment") Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/391 Suggested-by: Matthieu Baerts Signed-off-by: Geliang Tang --- net/mptcp/pm_userspace.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c index b5a8aa4c1ebd..d042d32beb4d 100644 --- a/net/mptcp/pm_userspace.c +++ b/net/mptcp/pm_userspace.c @@ -307,12 +307,6 @@ int mptcp_nl_cmd_sf_create(struct sk_buff *skb, struct= genl_info *info) goto create_err; } =20 - if (addr_l.id =3D=3D 0) { - NL_SET_ERR_MSG_ATTR(info->extack, laddr, "missing local addr id"); - err =3D -EINVAL; - goto create_err; - } - err =3D mptcp_pm_parse_addr(raddr, info, &addr_r); if (err < 0) { NL_SET_ERR_MSG_ATTR(info->extack, raddr, "error parsing remote addr"); --=20 2.35.3 From nobody Fri May 17 05:26:31 2024 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2048.outbound.protection.outlook.com [40.107.20.48]) (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 2C6DB1097B for ; Thu, 17 Aug 2023 14:10:54 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R0QtzTqIQr0lsnPn7fp/kb08qm4fJ9O0FYIDVhOnf1G2LlIzY1XuXWpjRFNpupiDed9HjfSjpc8COlmh2dMB32LS36zalRfhTxIQctYl8Nf5kzCLLwA6CoMnSLSZrIVIX/W3b67YkSA9d3Y8BIaE8NnAQ3OiJPIx0WDGXzq6plESEbPz+/dIiq2WZm9GmTzgnCOJdHgdfBlQKlVJ/NYYFbJXrGwaI6h+E98SZqeztK/vVcU3SOiXEOiKYVfdZYS9WVSURJStdTPm63tc7FL9XVhvuUeYVrVLRQRMUogGYfKeRjvSgaeXs0DcewoTKrutBm8uNqXJyJFOd9lgHp1l4Q== 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=P5LHeiwnwU2nGaUg4INwQiGzgHITtq3HVxdyqzG9DlU=; b=JUys2n6w8mypGDdRWXbxgB4xw+ZehEk3Er63zDorIQ7p2YCya7iE1AFPUAUqilMoLd8/x8ymNtCu2jO328HxDSOTLAlanZCvd70/8AHrtHv5zREJsrfvsH73QbGXk4MnKI13gQZ8Oscmus6Z0ZVyzJtSpbTMpHnzJjqne/JIczNvUrD5kAYZF7b5R2QvwdxecQ1bCRlFj3vXK7/Nx9er5h/vtdN9ks731p8Kq9qdkqqRzxcMGktT4kTtWubmNAnokraNJH73C5zwDAO8GXRwAMaSD43UqVCP+Jqd8DVjgmVmPA+FDscZ8kZJtjAK4meW71DOvRZfCkCmyjb1ZBJFvA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=P5LHeiwnwU2nGaUg4INwQiGzgHITtq3HVxdyqzG9DlU=; b=3x+NNOX7yumZoFWVL2JkxbIcjpVSyT/4YrbbrhvsvkfysJj+QcuMd3/qfqqN/JEW3ki/9+hvreXKTkEXyFqtsXjJaWOto6KR9Bmk0RFRxiyHzQBRmmRQDZ2p7B3pChiHnguDWhwuze1Fm8+bs5kfvu9d9sJrDOe+z/KwylnAXd3K6aESBwIk4BdDyENN47D0qqzlP3e1n0TAMpRmIlvnPjbslZXM+5Q0TQsnGPJjx/bsNrCOnWYPDHQM9cIjiKpJJOjLGYWipxd+Tvxg2ROIl0oGEYA1p3qBJ4NavmZ0Q463orfP0VuYVw4iRvj/0+YzDG3PAC0hVUYLVCC4JhfTHQ== 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 PAXPR04MB9057.eurprd04.prod.outlook.com (2603:10a6:102:230::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6678.26; Thu, 17 Aug 2023 14:10:52 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::2867:7a72:20ac:5f71]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::2867:7a72:20ac:5f71%3]) with mapi id 15.20.6678.031; Thu, 17 Aug 2023 14:10:52 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v3 2/3] mptcp: remove id 0 address Date: Thu, 17 Aug 2023 22:10:48 +0800 Message-Id: <2a2600dd6642da6d29be1df8062f7bc8637155b2.1692281317.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYWPR01CA0030.jpnprd01.prod.outlook.com (2603:1096:400:aa::17) 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-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|PAXPR04MB9057:EE_ X-MS-Office365-Filtering-Correlation-Id: a6ae6926-ec3f-4326-f7f4-08db9f2bc417 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PTfGJwrRQcPJZiozLnsI0DK9SvVOtDG/DDRfrcMFEFxfwUUwGormZ892VdZpaUbDYvLSi7c/+h0R/HihiCg0Mv8IKJl3yrrefth3Tc8RSdEclH5sBfpeqRzRfHd7baSfRKX2iWJaYVgQBhMKe6f48gEqlNiupP0NlWG4cRgW1qkiqmSYnK7lcwtoL5YTTIND4Tp4EyDvi25TuHi/R0z9Gq+Zz8F/BwTFUCVlARU6w333PAOdcqCwgPN89equrBcmBoZ8siyx5ANm0Rdcjj9mprNjYBaMNXBzYjm0p8GnfZo6QqhuTGytnFAkSMrzFmTr/lPoXsWSPw2sIoMixKISJz5BLPpptoN8hrzECAf9OpY6TVTTLdePHLBrBY9lg+XpmxQPgiDSsMTRG/K6Gjja1HPxKBOCEW7lbptiIKRKEXhzKNmTs8j3V4KKJboqqfD9dTAKuqZuT1xOdJHlFSnx5iUX9qfuBe44FENTBzN1Y7JAmjOCP0op+UfkrbO5aE4WQ3huuKRL9NB2tN2S0taXs3q/Dwi52i4UgLu3q1h/llWPhgQ5Gz7cq/OXJowsbkz+63k5VNT54g3YIYO0cRQV9cB24x3NePc4dpVB9OHaQ+I= 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:(13230031)(366004)(376002)(136003)(346002)(39860400002)(396003)(186009)(451199024)(1800799009)(2906002)(83380400001)(26005)(86362001)(478600001)(6506007)(36756003)(107886003)(6666004)(2616005)(6486002)(6512007)(966005)(44832011)(5660300002)(41300700001)(316002)(66946007)(66476007)(66556008)(6916009)(4326008)(8676002)(8936002)(38100700002)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CctSRJ5Reye/ZRt0MwW7aQflOWoZt88VU94nqraEovPfTLQDq9P5zYpbP0+v?= =?us-ascii?Q?QE5TAMOtfzDXepGSp5XCpijW50AGIxSowNgJTZLRH/qVSIURalAEHFcDSZIO?= =?us-ascii?Q?U+Vg2eRLQTGpv9v8V+hW6hLyr124srCA2dX1QIWnwa0bhbv9Ie82sr/Bi4zj?= =?us-ascii?Q?3AukYR79o2Pr/ZiFkoLBEwPa8/yMiQBliTwopQiDXhRzYNRyokRy8AS9XWoA?= =?us-ascii?Q?FRgM5kVaeuv6i0WzqZHh+iAOtT5BpE5lFeUWi5lPyviN/q75O8Atfyi5jEsD?= =?us-ascii?Q?GLlOwPV7IwWjWTPwdo9C25KFklVaY7VadJyJxfqWvnLa63cSlB4Z1yXa8vQ2?= =?us-ascii?Q?u9d94Z0SR8tzL9WjKbsDV17JVAgvSyQ7QACaxWj8F4yJDsHE4hCSY0tz65hx?= =?us-ascii?Q?4JvLJ+JUKNwW8eDQh49mqAo2ZR/gEnHJfpANAB+pbBmtQJC7RNAz1DtzFthM?= =?us-ascii?Q?P/x8rzZCVxBoQQ2bRLw5CI1zH9dbvgjkdLV05uf3oNndNUWQ+UdjPPo+MTug?= =?us-ascii?Q?yJ0Mb7ycPGzLxVQGo8bXSrpAic3l0ZBwtLGVEByWXeK9ChCKibReCssX+xqP?= =?us-ascii?Q?ttC58MtQGGShdvxlk8WdDoDbUt3ipvkXUJ94Tn/B5QocmrFC16076c8SDZQe?= =?us-ascii?Q?4l8YH8/rIyOSwefVwXn7r0eYNQf42U/VGYGON/tm0Q/ZnsxnxEryKcaLllC5?= =?us-ascii?Q?GtWVXRcp7XtXk1ieJItB6XdZjxJ1hciYcbZKOv7nGSc0zmvX8bRaNfQRTkuf?= =?us-ascii?Q?Jy/20R7bD6h2XgOfPiPMhrmrF9iBqCRWlYI1L1SY4xnwg62yi00eWpq7Dst9?= =?us-ascii?Q?ETrk7+GbFox6Tww1k8cpeubT6pH/mRtwkZGVFiGZ9wS/Ha3iFHiUSzFm942f?= =?us-ascii?Q?6+OZ2QmvFaWiGgiMMp/uybEOVTS+UUc7L1AjeW4ekTIJNyyMAJxPggU6doEz?= =?us-ascii?Q?rvVsdqy1+yga6W5YY1pvmIrKlNeTv9ea7SwqtxdpiJ1fNx/Ak4VKN7lPjAyX?= =?us-ascii?Q?hLu6bkJaJHK1N0qpb9irGt6Ty9RRBgfiQLkinA5X56OUbikNxTsj2/LYjb8P?= =?us-ascii?Q?rZ12XzcpNOrOUPoaObKRdc2FyHbFGDjtDLS1TzixeW6i3UTndBGB1rCrNCg1?= =?us-ascii?Q?+q1DBXt+JziWPFFB3/p0bmyj9C62wcFpFrkJV7iZhMz3TlxUeWgx9ep4512W?= =?us-ascii?Q?asJ3cPJG4qgeSZzl8BkDuvTnfLA3nTfz1/0B//AWZYhw5eGxbSzatuM+FSR2?= =?us-ascii?Q?WT8RcbjWL/zVzCzwegZfNpkRSINrwRMDK+LQDPe0F+mM1JAd7WzVA/Pkk5qT?= =?us-ascii?Q?vFnI1z/2N9iD77Ixb4mI2Jz0w/9OHjFyfeuiv5SD1hrmAqjRrGts7shB/uj3?= =?us-ascii?Q?soSs1uqFo5Rgl67G+CUU90KC/FN1nwJXWRekESR3LiPzB1dPYWyIlCkTJwMc?= =?us-ascii?Q?xeWCoPy91S+aOBVS8vZTOwoyQrk4Ry029NZU+2eGThizcCn7osNTHbkIgmzs?= =?us-ascii?Q?PKFzmX1q1no/aXOICM5X4893HJ0GEJfkiNvzszEIet84SloSI+Ta+q/Xw8rF?= =?us-ascii?Q?FOQV6nWVLWIgs5i0Fb1RAm9MMxr//KlTaSftTf0Y?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6ae6926-ec3f-4326-f7f4-08db9f2bc417 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Aug 2023 14:10:52.6425 (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: l4doHe+md/JWFA3Rir6MMvxzMlEOmLnfz4Z9bfYC3mf5parFCt/c0nq1czKk0Sx2YG0RFPDwZpH67totTc48vQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9057 Content-Type: text/plain; charset="utf-8" This patch adds the ability to send RM_ADDR for local ID 0. Put id 0 into a removing list, pass it to mptcp_pm_remove_addr() to remve id 0 address. There is no reason not to allow the userspace to remove the initial address (ID 0). This special case was not taken into account not letting the userspace to delete all addresses/subflows as announced. Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/379 Fixes: d9a4594edabf ("mptcp: netlink: Add MPTCP_PM_CMD_REMOVE") Fixes: 702c2f646d42 ("mptcp: netlink: allow userspace-driven subflow establ= ishment") Signed-off-by: Geliang Tang --- net/mptcp/pm.c | 2 +- net/mptcp/pm_userspace.c | 30 +++++++++++++++++++++++++++--- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/net/mptcp/pm.c b/net/mptcp/pm.c index d8da5374d9e1..6c610fb494ab 100644 --- a/net/mptcp/pm.c +++ b/net/mptcp/pm.c @@ -192,7 +192,7 @@ void mptcp_pm_subflow_check_next(struct mptcp_sock *msk= , const struct sock *ssk, =20 update_subflows =3D subflow->request_join || subflow->mp_join; if (mptcp_pm_is_userspace(msk)) { - if (update_subflows) { + if (update_subflows || subflow->request_mptcp || subflow->mp_capable) { spin_lock_bh(&pm->lock); pm->subflows--; spin_unlock_bh(&pm->lock); diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c index d042d32beb4d..3e5ac4015c8e 100644 --- a/net/mptcp/pm_userspace.c +++ b/net/mptcp/pm_userspace.c @@ -236,7 +236,31 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct ge= nl_info *info) =20 if (!mptcp_pm_is_userspace(msk)) { GENL_SET_ERR_MSG(info, "invalid request; userspace PM not selected"); - goto remove_err; + goto out; + } + + if (id_val =3D=3D 0) { + struct mptcp_rm_list list =3D { .nr =3D 0 }; + struct mptcp_subflow_context *subflow; + int id_0 =3D 0; + + mptcp_for_each_subflow(msk, subflow) { + if (subflow->remote_id =3D=3D 0) + id_0 =3D 1; + } + if (!id_0) + goto out; + + list.ids[list.nr++] =3D 0; + + lock_sock((struct sock *)msk); + spin_lock_bh(&msk->pm.lock); + mptcp_pm_remove_addr(msk, &list); + spin_unlock_bh(&msk->pm.lock); + release_sock((struct sock *)msk); + + err =3D 0; + goto out; } =20 lock_sock((struct sock *)msk); @@ -251,7 +275,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct gen= l_info *info) if (!match) { GENL_SET_ERR_MSG(info, "address with specified id not found"); release_sock((struct sock *)msk); - goto remove_err; + goto out; } =20 list_move(&match->list, &free_list); @@ -265,7 +289,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct gen= l_info *info) } =20 err =3D 0; - remove_err: +out: sock_put((struct sock *)msk); return err; } --=20 2.35.3 From nobody Fri May 17 05:26:31 2024 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2042.outbound.protection.outlook.com [40.107.20.42]) (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 5E9491097B for ; Thu, 17 Aug 2023 14:11:07 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dALc18Nchh0eiBskB05viqNc96IhY9++vfiF6pMyasstdkjYI2cKdvOxCQoHSLkTK48497+FOJiLZ0pHiZfKn8WeE46lmV2ZcZ4eEhfWPh01kBfbw6SW5Eb7SKwEl7lVFsZuBCoOHO/QMD6B3FQR4TDBy6FppTtnEeFn/8N/G9YtqlnJb34B/k+DDpPEUtUnAoEfmGQ0Wpt3ccKRcNr3yuLj+d9ZuKeikGL0pFGhP4vBf3++Xnr2W9LAgT1/vHC8c92nZW872PD9NfUzxpPghsJlJp5jQayr5TXhsEj24gOmmNTxQeDhIXYCV29ahXrQbeAVDkdbcVbWPcQGu7prWQ== 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=cGOtSTJIJGCqd1RioqpUQcVhYsnxs0ehNo+hY5q50yE=; b=QQZmHmXrI75Aos8AL0KqGl+GW+ib2ZnVEsImEEHvjSJNYFRhpzb/EUq+t+LvSKqlUFT2B3L1QJN2cJczZoOmf6Gkwt65HJDpyPpH45U49dByQSAANZ7ttFc4E/Y6IfGDD7Ugl6r6fTZPQPbcIZdCPmaqECwgexn3J4Umn+1q4kfzNR23X9z8Uvp3F7SHhSvZk7Fmtk+84xhEDNGeWyDXWRyicqyzC2vhmoP5Wm01HvJj4/qLh7MAI4xUKd7+vE9oK01MvZcQdxnyiXq2PGJbrwe3w/xijF1zkSInkPpJ7Go2cR3hcaTskAYDJgMDq/wFfzQjTwh7E/hdzJC1Xi7XmQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cGOtSTJIJGCqd1RioqpUQcVhYsnxs0ehNo+hY5q50yE=; b=2y1opZVPu+4dEdze/av1Rs/NIQP43aboC1F4HI2A/SvDN2wWv4Sar+vCvy9cIwygn81fVARnn/A6Qak3MK9aGGldAjdG1zDTV7GD9HFXBInIsLtg27ceIKn288cACRjzqRUbq+5bnkP3BrUaVqHDxk0r4qumEJ8k1/SXFpNUiZgwdoKYdaCN38W4NWKKf3kFJBFJgWrAjVzQvyW5jdiJB3R7iYg0vGEEAp/kGDSGGU5tLiBVD8vdden8yG+MgnUd0zM6ny65mvfNibYZHJWK5VGaKj+SrLoQXfAPJaYZQ5Sf8nIjo1Xur5MaXayvw6GsVMYegA42VM+781cE8Tr+Tw== 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 PAXPR04MB9057.eurprd04.prod.outlook.com (2603:10a6:102:230::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6678.26; Thu, 17 Aug 2023 14:11:05 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::2867:7a72:20ac:5f71]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::2867:7a72:20ac:5f71%3]) with mapi id 15.20.6678.031; Thu, 17 Aug 2023 14:11:04 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v3 3/3] selftests: mptcp: remove id 0 subflow & address Date: Thu, 17 Aug 2023 22:10:49 +0800 Message-Id: <4d399e6564e6a4c2ea3fda6f6f4f7ca50dd6c0ac.1692281317.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYCP286CA0296.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:3c8::8) 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-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|PAXPR04MB9057:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f973829-d681-4a5a-a5ea-08db9f2bcb43 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: M7G09a27JA2JtbgtZvJZCCcAkkHsyMv2HJaayXMN7nyoZXP+TBpFC+7cB5bmuJYIk/EtcgLxPixGrnVCVoaBL2dHcDfWMSNolSDR7MexyHFS6klzmYBtZtp7PUWPVRrzU8b1KLklvlIwtHOFETfd7/l/I0993cytWOCYJcZmoXNOiJnf/PNd1uT+Jm6JAc4HhIBjiIIn0n3WK2PEInhlr870PuGzjfYp8ehJtnG0ODsrA/CVelJ1wKRhkmEfWUyYl57eC4gW9zjb9nTKxmGo/6EuknT6OgMPYwiCSmA1xsm8QoU0uD+S87PIiAFHA5D5AfKrX8Id819HWdShjn3tEI02sDhdbb1AvXXdN+HPsJD/s5XYq5MvomskAkV13BUIoXT9UTrlYehRA9ukv6yrUhLp1KroKBYacEdT8QN020AOSpN3tL7jxreP9U8ztZngKIjEHxPLj//qMC8Uk/9jrdT5sDYN79j7UKgKccmLfY2u0TLIPqIxzGMdLLMj6XIv46SMd9DGYfqnt4D9kuiFufDyg9gXOXWHBwOXVY55IuBaNtV/R6rsrF0OZfAiwhd6SwUpKtfkaTqmdV5FO11tGgLSrv2ow+CU1FJnZFhdGy8= 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:(13230031)(366004)(376002)(136003)(346002)(39860400002)(396003)(186009)(451199024)(1800799009)(2906002)(83380400001)(26005)(86362001)(478600001)(6506007)(36756003)(107886003)(6666004)(2616005)(6486002)(6512007)(44832011)(5660300002)(41300700001)(316002)(66946007)(66476007)(66556008)(6916009)(4326008)(8676002)(8936002)(38100700002)(13296009);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?bXhHhArraZ1WFyMg0UJI5JkJq6EvB+gWo+mcEfC+QKFpGxJCTTWQczofLeg9?= =?us-ascii?Q?TCafMeETsy4JYIYnPBgqsf+jDw7+RBF+0BVQuhtBeOtNMrczxNWrDyjb5z0u?= =?us-ascii?Q?ESynTXgAxjuq5WuoFaJSmbQdC03l6jxnQHuQz5Hbv7z76Q5MNytQq/KOYV0y?= =?us-ascii?Q?zE0NrBnK+/bTBsAe/RCBxJJ/cu8kUpqN+v3ZC2YfLUkTEsoChOPIWlsG875J?= =?us-ascii?Q?UEor0Thdv38sbmNEBuIn0TX8u4BsUFe5nhiyR4srLUcmXNL8FoAPzAoee7Hh?= =?us-ascii?Q?mL8BWk4SlbE9+7j5REkzjzLbgY4UQfZsfXmbmD06uEBhRS5bFQis2JUC3Mof?= =?us-ascii?Q?yC2mI1TKBPd6C6w6qDP5FVQ0OR+iUxG11amUVbVgWyFp/OOo/ObsadM5X8jp?= =?us-ascii?Q?0/pr2iilDE4iFcab9wSPjCB+7UPvu8zM2csRor9wtSpy16+ZiP9Mt8n8DK9v?= =?us-ascii?Q?I/Udk+uEOwxrBOViv/xZUWaZXcrVb94zK0XedgHqSq4MsdEDuKtGHlHUGT2G?= =?us-ascii?Q?WHvLINvs2H44AxnEjFoJX0c1IyTmE38AnHUGQFPDN40vJn4F+R7CL35bR4+4?= =?us-ascii?Q?HZ0xr9UZCfggEktH5bySfQhNG9BkzI6suoxGhFS5COURQu2I7hNwCwyCCTAR?= =?us-ascii?Q?C1Nerl0lFvId8ewEIzb3cQDCymVJ7+jC+xAXSViLAxY32BK9b7dvMghiO2Uo?= =?us-ascii?Q?VDmtz/blfzjDXA3PLNEyvhxHS9jlvXL2Q937mtMGEAT/LM9CQ4EwyyhtIyqR?= =?us-ascii?Q?GOw9YhIlthjLm6w4RxkM0aUFnq00GFrqCSNOxB55/V0PpTZPzUCe6F/WVH05?= =?us-ascii?Q?4cQ+SWVK+AFza0613oJZsJRGCaYp6XEPFEciqUw/tQMDMIXDY2XPPijpQhZY?= =?us-ascii?Q?WI/rurDSNRjrOa5biUXkgHZQtR+HmGQyTn4dXGQRwTIkNfVUKieX9L+J+db7?= =?us-ascii?Q?EVdPdCQ4DVsS6g/yW4mOBQe5ynowH2kCjvEIxuKNEhLpuRQZwRB0O3WF1lFW?= =?us-ascii?Q?sqCPgmXdF+3LiaEzpsL0N3cvK/3XerojeKfR7pDCPvRQJdDaVAyrr5ahsleX?= =?us-ascii?Q?9khloNsCJOYBP4GSDn95defnxVKMqsnXrEgDdkuVsN94LyNE+EW1njNDFxTo?= =?us-ascii?Q?zgfp5K/l3WtrbJ2yQpYaFCLX8KTOTE3h33YvnMC5NRXl5+FzABMlOPVNb9sU?= =?us-ascii?Q?QYolrvfieSkdbMZa+wQCv6n3HtHQghXNYqsuX7BgjvWna6im1mLAPfyJIPwM?= =?us-ascii?Q?Mz+b7b9GJz5kNORWm/I/KMCLD1zJSTp6tEAbvIy+NaBQc6tPgRe3QRirAYdH?= =?us-ascii?Q?PW9VGohcYfvt/mqVlpJ7VclFE5CDsE7kdQxdeipGiDB4DrULRQLyyUO8wWtq?= =?us-ascii?Q?xG66bcH5bu3PxuqPMSZSMKU3DnPY5cD9RsglguTqqDslFIAAp3WFiwDXjgwj?= =?us-ascii?Q?H1pSsU7WeMOOBAcyONg0ilWb9JRK1+L5HGjLgbgjYlqrban5CPphjjRgy8jy?= =?us-ascii?Q?3K9IRA5qedrNd93Yh6L+xGiHgMIKm5Z6vo+bXPULR/7Du12GTedJWM3RiZIu?= =?us-ascii?Q?rjIpwTggST76hjQ2Xv0mR9TIj2O5rDts90NFD7Ny?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3f973829-d681-4a5a-a5ea-08db9f2bcb43 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Aug 2023 14:11:04.6830 (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: Bi0uvqw4/b+g9EQcEcn86gYn73lTwQ2F2VLF2ELhMxS6ujMBawjOtpVq6F7JlUxnBe/x99oN3o5+TMABCSVrFg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9057 Content-Type: text/plain; charset="utf-8" This patch adds selftests for userpsace PM to remove id 0 subflow and id 0 address. A new helper userspace_pm_rm_id_0_subflow_or_address_ns2() is added, in it use ./pm_nl_ctl dsf lip 10.0.1.2 lport $sp \ rip 10.0.1.1 rport $dp token $tk to remove id 0 subflow, and use ./pm_nl_ctl rem token $tk id 0 to remove id 0 address. Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_join.sh | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index ee1f89a872b3..2d7ac76697bc 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -3320,6 +3320,26 @@ userspace_pm_rm_sf_addr_ns2() wait_rm_sf $ns2 1 } =20 +# $1: command (rem/dsf) +userspace_pm_rm_id_0_subflow_or_address_ns2() +{ + local tk da dp sp + + tk=3D$(sed -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2") + da=3D$(sed -n 's/.*\(daddr4:\)\([0-9.]*\).*$/\2/p;q' "$evts_ns2") + dp=3D$(sed -n 's/.*\(dport:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2") + sp=3D$(sed -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q' "$evts_ns2") + + if [ "$1" =3D=3D "subflow" ]; then + ip netns exec $ns2 ./pm_nl_ctl dsf lip 10.0.1.2 lport $sp \ + rip $da rport $dp token $tk + elif [ "$1" =3D=3D "address" ]; then + ip netns exec $ns2 ./pm_nl_ctl rem token $tk id 0 + fi + + sleep 0.5 +} + userspace_tests() { # userspace pm type prevents add_addr @@ -3434,6 +3454,32 @@ userspace_tests() kill_events_pids wait $tests_pid fi + + # userspace pm remove id 0 subflow & address + for type in "subflow" "address"; do + if reset_with_events "userspace pm remove id 0 $type" && + continue_if mptcp_lib_has_file '/proc/sys/net/mptcp/pm_type'; then + set_userspace_pm $ns2 + pm_nl_set_limits $ns1 0 2 + speed=3D10 \ + run_tests $ns1 $ns2 10.0.1.1 & + local tests_pid=3D$! + wait_mpj $ns2 + userspace_pm_add_sf 10.0.2.2 0 + userspace_pm_add_sf 10.0.3.2 20 + chk_join_nr 2 2 2 + chk_mptcp_info subflows 2 subflows 2 + userspace_pm_rm_id_0_subflow_or_address_ns2 "$type" + if [ "$type" =3D=3D "subflow" ]; then + chk_rm_nr 0 1 + elif [ "$type" =3D=3D "address" ]; then + chk_rm_nr 1 0 + fi + chk_mptcp_info subflows 2 subflows 1 + kill_events_pids + wait $tests_pid + fi + done } =20 endpoint_tests() --=20 2.35.3