From nobody Sat Apr 27 03:26:15 2024 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2082.outbound.protection.outlook.com [40.107.13.82]) (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 EF02F808 for ; Wed, 10 May 2023 04:20:15 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VACJLosx5NEO6B0AA5or1MCU1CmQofOcInuvGOPgWSoexNBVBB1HJwHxbGYX2kx0J4cu+NjNmqfBYnm83LX7bnAa0kT811RL6OgibQJM9AFJkza06j32h9DeUYHQ0hRCGb+RySIttFS448WlZEpZf5p72MdzvgpFXxT35yvACUKvceYiDdDzzZrhb1xRJNozWWaxFutABaa1xPcMcF3iAAc34UAjvpo/Vq3NppyvIwYnoRozCXI299CczaFJxEj7wojtvCOYEsz4ogd1wRR5eo3KGtHf++NlJshW/+HM2v0TBv/3Vf7nUszPyC0I39JSUke7Sc7x+lS+Z0w7UpdyMg== 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=t3bl3W2DePJSR+A5CQupDySYUYnnndOVDynmbOw3Eb0=; b=UzdofFM8bsi1LLKXEKZbs3JjGofQ/XQ9PVRYdvrEK+EwYDr0ys6+nCelS1EYb5NOPyb7FzlsIk06XpRliNOwoars10vb86jOdnNbiLJYek61DkieouD1JR79k/uI4V+s5rv10EF590iPyjkUx0cTRG34yH6LA3UbmlebX0RnfpwE5zvdZF0mXB54BeGGfhhBEiFPmBDctHPmOxmsYIdsB7dt5j3AoygDsMl/hh2JHbGLD3GN4RW1nXBskDJ1fXlvtinELWAjxpjVuCXckFu4F5X0sxY6eTJ4HJk/iOWF1zuX6gnpSTt4ozfoNOyRrMhaHFOAGxzpBOInBPlLinzm7Q== 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=t3bl3W2DePJSR+A5CQupDySYUYnnndOVDynmbOw3Eb0=; b=UjezVn3hr12nTiJ26H+PNhBrmpaRnm0z1KC3IEb0nyHuXF5rSk289h7J4y8HBE9CuQz8uPraTtUm4Tk6yI4tzBxfrTzVrRjSnD+WjWMSiLRm3QBiUT7snu3IK7TEf2f7Fq7eWXGf+KLMdjH+pcQVrSCbJPrs2VtkR2+hMgUdvWSiQxuvyGhDYaNp5iBdpFUN74eqIBK1WSrtW5P+0+TGltxG1H1kQjLDMnChMkgG8UubSdFlJaq4vsQ32PzHaEtp2WPeNt/bmDmUbqV4kDepWgoQYtvVowwZda2D3PpdDqT2TLHxdW22DgB7X+MNX6i0uEAIHCSmr10Ue2XxbQohHg== 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 DB8PR04MB7146.eurprd04.prod.outlook.com (2603:10a6:10:127::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Wed, 10 May 2023 04:20:13 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2%6]) with mapi id 15.20.6363.025; Wed, 10 May 2023 04:20:13 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v13 1/5] mptcp: only send RM_ADDR in nl_cmd_remove Date: Wed, 10 May 2023 12:20:08 +0800 Message-Id: <3b081bdc3ca6f35780d39f5a92b42f17a65b1b33.1683692137.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY2PR02CA0054.apcprd02.prod.outlook.com (2603:1096:404:e2::18) 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_|DB8PR04MB7146:EE_ X-MS-Office365-Filtering-Correlation-Id: 42596847-b73c-40b9-c10d-08db510dd99d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: MyMGcR3YeH9S3xDlv7qPjivCCXe2+eBbcjN/Tpk8H1UkXqzl28nfG73y6MPTM4sBNNiMaY3fP+LDb2RPRqRWQpvcveIVSq/qbr8Fn5TYHSNb7HMYFO/1WZPUppNCzHpPyi9mev13O8HYkt0PAQ22bM5mWBR0nyIoBWbOWYzHt8Ut/N4Ma1IaJmifYnYNaxPl0taQQSnjFnmvMVN2E4o1O/eXg8nayYHvRxZOMp263WXAhYC28e0cvmFdbdvcfz1045C8csG6q2VhcyABR+/rfirRULKIdfX+ZBeWQ/e5Y/jukuSGYERiBR59H+EdJzsBVn6DUqbl5xjkABpT42zsvOfoqKHBtfqElZGku4mDq1ePHap/wbTrC/lico/DdqH51G+F5/eNMeozunpm1kMpCOo6Qc2HeW5xaqCxecXUg4imi2+dv3irCgXw41YPLfhvgQfuQ1U2e8+MfaQPDtTkJclwNZgo3qbcGOwNRvPxTgZwtaxeTN4GhVkbackHnXwdWyTxZN7io2nrvZ0SZZbMgZBF9AS+GySxmT4hGdseMJ4= 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:(13230028)(346002)(376002)(366004)(39860400002)(396003)(136003)(451199021)(478600001)(66946007)(4326008)(6486002)(6666004)(66476007)(66556008)(6916009)(316002)(966005)(86362001)(36756003)(83380400001)(2616005)(6506007)(107886003)(6512007)(26005)(5660300002)(2906002)(8676002)(44832011)(41300700001)(8936002)(186003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3bvFrOS0Rt12HpU5HLEnHNngVdKc8/mOPH+rrKC11572ZSyYmySQ6wCPDzGk?= =?us-ascii?Q?tTpXIZz6UM3S39FgCXXzlzjJU0wi2Rkl2aO2qkVVz7aYshkve4CPAIRlAF89?= =?us-ascii?Q?nF106WqTa7eMSbh5w+4B6QNc1wqch9Hh/bMxgcz4mLKhvRfnPqqmj+dd/Hcv?= =?us-ascii?Q?SmchiTiwtZoUL5zn0oVEJWe32LUjF+OjGnAJ+1GEBPq8gvGx4VInqYSzNDfX?= =?us-ascii?Q?H5kqJ13MnFNpbZRd0VNasjt9Y2tzbi5lM8lzcSEFa0KKTzn+ZhE2q8ezQslW?= =?us-ascii?Q?EVzqJjUq5ni8WJXC+913DP+HGiqiR2yhsz9nIzLcb8FXSOTLCK+9JAnmQpKh?= =?us-ascii?Q?5WDclqVjMK+lrLvf/c0yGHQgOp1CBMek0RZeHFlB7CMB5T/BEAkfENBfxPu0?= =?us-ascii?Q?SJ2/bDlMj4aYmBIGveNEGXlov1EjBj802AyHL7DQLZtbXiLACcq11vsBU4HK?= =?us-ascii?Q?DpXMOJnuOtKWpBYXqqKstrtLEpZUeg1vWJjONreJXhBdnQgFnnYko9kKS9O8?= =?us-ascii?Q?GiFPPy7f5jyefE6CkZszCTvWfSBHfyJq4yet8VH/x3bC4NFIyTgiXTInP+s8?= =?us-ascii?Q?xOahusxmWrh09FAliTahQ3L0FnnWjl0TCA6X1f4DlePplg+9Dq3r1lctIFOY?= =?us-ascii?Q?pP5RwL+VI9Sg9pGt6RonRmT+PplujNxSO1eZVwJHRUzU4hEY6Mv+1ZKo+vBO?= =?us-ascii?Q?ZFGSGtSrANvzNLqQExvJ08uOwk4prZhWyqABj+7E/MudG098wh/VaRHdgfba?= =?us-ascii?Q?BOUl+qr5LEM/r5QUoWQmfkvx5hMdgdVfP99ma3OHb5ox3P4yrFmd97qLAepg?= =?us-ascii?Q?adHysHzaVaa3Hd2gnqu3fjK1M2/rlZVwtHlwnlZSN65RijeJjuIUIzWdo7qs?= =?us-ascii?Q?haMJavURyWPZ5oeihvhUOqAWKtpbgd82jlluue9X5Mkv//c9NPQ4iqC7PFOv?= =?us-ascii?Q?Yifh6FrlcLYk75aYvyMOFUrHf/va+hKjnkiegoRoM6YPFBx0Ea/bhlVbdbr1?= =?us-ascii?Q?USgCpfEwQLGSyEhLU4oX1in5ZkfJGl6SnjpHAZ1WFq1zDukFFGfrNb39iCXJ?= =?us-ascii?Q?POpysLFGySCdImsddF0rbKl4shjhOThWl/Q7m+ME1zU57fvwr5E6JPh3Glz2?= =?us-ascii?Q?9hV2YqKcrCFuHsfs8LZIb+InLnAvoChn1kFGaEfdR69OLjEJkfqEsqHnsa5x?= =?us-ascii?Q?Tg2T4go7YR1cXSf55R3esMYrkj/wLaBJxbHeVNTKWkgp5SlSVRBIHbMG2pyn?= =?us-ascii?Q?Ga6k6UTfqt6eq12972m165ez+5xyRzQiXowUmPc34y/M+346d2yoJEKvD2WP?= =?us-ascii?Q?Ias1fKoR7M0RtwQyqkgmlbIVRxT6/p6vb1cjZQhDx1qJQnNK7I7gOuu9poKh?= =?us-ascii?Q?ik2zhyhuM6xmwdfDJDjc+iflm75ceWopPkO3PUn7pfmcuaboq4SszN8VZ6aE?= =?us-ascii?Q?680XRAp6vqalE7RZD6htjdSMITGzY3/8TsGq8yU4tkxM+V/t2FlKPh2Yzj/k?= =?us-ascii?Q?3C+Uy94alMB4c27JxfxmP9vxpEK6KSbMaBsYGcEmuj+oYdghN0jwvJ4sBgBv?= =?us-ascii?Q?S5PbKDnSyJCA79H4KeGhMWYGcyr0g2HxhRiWvzsX?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 42596847-b73c-40b9-c10d-08db510dd99d X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2023 04:20:13.2954 (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: zuGAKfYdMrpG/2npb4lhNCDW11z4KOXJt8MbnTWsLhHI4xpMWwJbj3um3NZH5S+uiWDEBhvl7Rs5qtbdwwo7AA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7146 Content-Type: text/plain; charset="utf-8" The specifications from [1] about the "REMOVE" command say: Announce that an address has been lost to the peer It was then only supposed to send a RM_ADDR and not trying to delete associated subflows. A new helper mptcp_pm_remove_addrs() is then introduced to do just that, compared to mptcp_pm_remove_addrs_and_subflows() also removing subflows. To delete a subflow, the userspace daemon can use the "SUB_DESTROY" command, see mptcp_nl_cmd_sf_destroy(). Fixes: d9a4594edabf ("mptcp: netlink: Add MPTCP_PM_CMD_REMOVE") Link: https://github.com/multipath-tcp/mptcp/blob/mptcp_v0.96/include/uapi/= linux/mptcp.h [1] Signed-off-by: Geliang Tang --- net/mptcp/pm_netlink.c | 18 ++++++++++++++++++ net/mptcp/pm_userspace.c | 2 +- net/mptcp/protocol.h | 1 + 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/net/mptcp/pm_netlink.c b/net/mptcp/pm_netlink.c index e8336b8bd30e..784145e6a314 100644 --- a/net/mptcp/pm_netlink.c +++ b/net/mptcp/pm_netlink.c @@ -1555,6 +1555,24 @@ static int mptcp_nl_cmd_del_addr(struct sk_buff *skb= , struct genl_info *info) return ret; } =20 +void mptcp_pm_remove_addrs(struct mptcp_sock *msk, struct list_head *rm_li= st) +{ + struct mptcp_rm_list alist =3D { .nr =3D 0 }; + struct mptcp_pm_addr_entry *entry; + + list_for_each_entry(entry, rm_list, list) { + if (remove_anno_list_by_saddr(msk, &entry->addr) && + alist.nr < MPTCP_RM_IDS_MAX) + alist.ids[alist.nr++] =3D entry->addr.id; + } + + if (alist.nr) { + spin_lock_bh(&msk->pm.lock); + mptcp_pm_remove_addr(msk, &alist); + spin_unlock_bh(&msk->pm.lock); + } +} + void mptcp_pm_remove_addrs_and_subflows(struct mptcp_sock *msk, struct list_head *rm_list) { diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c index 27a275805c06..6beadea8c67d 100644 --- a/net/mptcp/pm_userspace.c +++ b/net/mptcp/pm_userspace.c @@ -232,7 +232,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct gen= l_info *info) =20 list_move(&match->list, &free_list); =20 - mptcp_pm_remove_addrs_and_subflows(msk, &free_list); + mptcp_pm_remove_addrs(msk, &free_list); =20 release_sock((struct sock *)msk); =20 diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index c39e172c95db..1a2772902e9d 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -845,6 +845,7 @@ int mptcp_pm_announce_addr(struct mptcp_sock *msk, bool echo); int mptcp_pm_remove_addr(struct mptcp_sock *msk, const struct mptcp_rm_lis= t *rm_list); int mptcp_pm_remove_subflow(struct mptcp_sock *msk, const struct mptcp_rm_= list *rm_list); +void mptcp_pm_remove_addrs(struct mptcp_sock *msk, struct list_head *rm_li= st); void mptcp_pm_remove_addrs_and_subflows(struct mptcp_sock *msk, struct list_head *rm_list); =20 --=20 2.35.3 From nobody Sat Apr 27 03:26:15 2024 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2088.outbound.protection.outlook.com [40.107.14.88]) (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 72FE3808 for ; Wed, 10 May 2023 04:20:26 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eZxGEF4dWxWqBPW9otqdXbany0TocYyleRf/vp2dMHqe1f+msQvUV8Eh1vbCTg6+3PQzeR/7pp60hBKXBZgq4Hs2WTdCD/qOedS9toxwEz8glpkA2xFMG1RgE28vCmMyqYBS0iP+CdkUHep5SSJH6dFrsofxSE8YbTce0394BYfbcpN5W1aX7o/TsFr14CeaUrEkcqVa6RHIIGoZShUucRe9Gd67XThcLGcJnwi29VV2JmayQ+rs7p90joH4I8w+QIrg+OJvnqKhKQbyW4eAgry82kYNHdHLk6OVkvRqkliyCdDJEQ1jJu7SPlgHo+VOA6iCOaKueTnhtRUomnezFQ== 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=eTjgHtFxHRUGA2OOR13fqbi64PVR68kzlKIrFhxtaSU=; b=azR466ei6M7BwR5f/+ijm97cZUE7PZo9wPcF7xTPBg3ZUwH4BU+UGiw4z/mHlx4hkjEHoZg5zTR7UxaTUDncf9vLHaHLo0PkPsn0OjOeqkPtVv17ZuDGa0cet9xcRkMW2G0CMsbnGSiF1S0miLvMn8nlwDcDjz8e2v/4noa1biyvFf/SXSdZF+y8Lxlx908/8rGMEgL+V1xAyl0sNgw2890ZW32kh7LUEZmyYuA8ItEivepvngcsCHecguNHxIknLK+udd4wJFOOzFP8XjePcSTkQw94Up/K/claSLyd3p983ZYMC6p1pRBJoO3n616e4p/2J2aBJ+LGO2DTct9VZg== 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=eTjgHtFxHRUGA2OOR13fqbi64PVR68kzlKIrFhxtaSU=; b=27j2ghEAA45ccW5JGexhDgxE82/xlfolQ7j9sCno4S1zkH5xapCnMhUJcNU57GYvYm3LkHs1rFJB+g7nWIu6sYRrcYDwnesRJXQqYi9q9fBUV+Md4GSkWstUcwSYC2zPMiMfHhGnfMwL37hUDxSfziML99bhnzY8RLEd9Y5nfqBpOPz1QhgrgY8TRAufq5MO0InHWJoFK8edZCr9MaYKTx1arb0UsXGFZCmMYrual8to4CRd0J1U0Z/nvSaXhfHfBAYk3e1QryEKdAHcmUN5FGVNvWrBfMLUocT9xAuD2IZRgrSEzFzQuIvmtFzEIiJ3KH3Y0Bdd4aa70r6R2AUnnw== 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 DB8PR04MB7146.eurprd04.prod.outlook.com (2603:10a6:10:127::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Wed, 10 May 2023 04:20:23 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2%6]) with mapi id 15.20.6363.025; Wed, 10 May 2023 04:20:23 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v13 2/5] selftests: mptcp: update userspace pm addr tests Date: Wed, 10 May 2023 12:20:09 +0800 Message-Id: <37b61d99403ec9572724fc2b4f4c0f50ed6ace35.1683692137.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYCP286CA0043.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:29d::14) 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_|DB8PR04MB7146:EE_ X-MS-Office365-Filtering-Correlation-Id: 0ad01cbb-f984-4479-1e92-08db510ddfb0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 05jB0nC0diXIkGEaKmAexPo5Bq9DqBWGQ7mMfFSgFruWTxycQ06fdlTJoq/x4AJpzd6MbbcbbQ1DW7W6EGGA3qO5epYFtS+Dn7wvlUeIhrK1/koigl1TffOqVvCPW9Y1fSUqDHN8T5tTEhf6l/TRrw182Ietd8IwfHzpYWDtgLvhFrA/FT4w+SLY0WRKvXasqSAPgmClP1ZPsk2zgdBtWM/tHSgG5vjP+V1qtFBfYp3JrSUo/Nx8KJuR2vrDYGrA6tXLOf9PMeo5dSDlAkOle3qx4YcKueMNL+rKCKqtuF645jgfwzvDoL209VWdF6LkKimVa0Y/a8lYsSEVG1iWwgvLxXqV40U52sLviTn52cQiT1gkCbPnxDB6prWdOVlCSXfIf7OaXQo1D30y34a/JHCiJWUbMG37wAdkZG/u5/LvLGJ2TMEzum6kqGHc2ig4C1soZmJz+cqLb+qZlxM07Wz9mcIbSBwV2TR3om5G+PhTPWCcrOANJMzG4HMPLAjrRDIDgghKlYumtwoZuwXJLjj6RI5kXsBRnW6wjhCVBwZiEJiLJBG1/18aSRrCtsBd 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:(13230028)(346002)(376002)(366004)(39860400002)(396003)(136003)(451199021)(478600001)(66946007)(4326008)(6486002)(6666004)(66476007)(66556008)(6916009)(316002)(86362001)(36756003)(83380400001)(2616005)(6506007)(107886003)(6512007)(26005)(5660300002)(2906002)(8676002)(44832011)(15650500001)(41300700001)(8936002)(186003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?mwqMLOtnWiEj7EVG+rmWaS0B2pCfnCiX8+Y+o2aAuiTR5SeH8N6lEA4Xlq/0?= =?us-ascii?Q?+6bboL+x0gE4GKk0VGRV+Jm7lmFDICkEV1qXQpTqiYVQ6iD4Os3d6Qv16Kya?= =?us-ascii?Q?uHj++tlTZfhAJHuo9wQb572BidYz64yyHGXAZOuEqTZ3jaCQZovm20DpDJsT?= =?us-ascii?Q?7gcusVA//1SQQs9lLomM+6XqHqPi0XgKzdQVtiGJ91fxIRLojWGWy+Hgn87q?= =?us-ascii?Q?tdmZX9xixjSGc/KjvHQ9ADka06miNhyXGWHSYC9GBOw8IvRQ2fQvhzf6X3Iq?= =?us-ascii?Q?CnOsGDbnJGU/ks8u+lA9s6pXzEKklUseIwiEQpzFCQD10X7E6vV4vqAqW08n?= =?us-ascii?Q?axa0x9yByxGKA3MLKILc7HSIe5Fu5dlccfcS7R6DuBpoGnmob/7+0+Sbwos+?= =?us-ascii?Q?4ErkMdV+jSewNSwHBZFFX76TBmf+XePyHVDXxgrJ7LtpnSRFBtNHgYHqMbID?= =?us-ascii?Q?xMYt7lyBtft9+1UGMLMbGpo8AcnMA8MuKLX/NSGqS3o1DuGQO+M/LS3FGS0T?= =?us-ascii?Q?rXxLZGPHGyCNHC7PoGOh59JjegBM8pq8XxH+P6KrDfU2rA8Y+Irz+FXJ5x0K?= =?us-ascii?Q?dHMZX+I8+P4h1d3xsumadiBTmSuGHeH/hCQ8h9r/y0l1nK+4WWOVuZZZ/ebM?= =?us-ascii?Q?3QpEi9h7dYRVNVed3+U8TAWlR+sfROaqa6booghc+Z64mm+lIGel6JH0Q2D/?= =?us-ascii?Q?N/Sy5FGQIaoAWW3CUwetlU3vN8r6taN2kx0MXTtad9Dmyv+rqsJOje6L0q0B?= =?us-ascii?Q?xNzIP2bx9+LoCS/rPuxN2ddLawBMJc0WGV1fnhgYMJN/RiV9GiYYE2UfPRwo?= =?us-ascii?Q?mkdYT9/anCbA0Immv4iN7cAl+9sF4gJ4imkrwkza6Kequ/le1IHYmrYHl/wk?= =?us-ascii?Q?QGQnebjL0rQ1JIcfqePZ+ca/UbyfYr+s1n9RFEKh8VCceX1afzYdH9FoxjYF?= =?us-ascii?Q?dlPiu3Lqpz5VYz7jusHpzZ0aKw3sq/eGz1zFFLya+P9y9Ye6Hxyj8jHSKk2/?= =?us-ascii?Q?8AgSzsfd3IBEfU0vM3N3yY6HDJmppzBt+W50QQcKnJtDB3AKBCEQw8XnTzYW?= =?us-ascii?Q?r6OXFfnc9G/SBDbn5aI2CEnfkExbQCtGkHTEGabcKUjPgff1iVEUSNHAd/4P?= =?us-ascii?Q?dK62lMYZo31WkARq9V+DH60egcA2IUy0quaARHVS3gDSE3nw7rI1MeTMLtRA?= =?us-ascii?Q?GE/AfChunXcFoopOqtySP2ppKKiwXlI179TOa7UzM6yMWH5pvAxVrY0zPGoE?= =?us-ascii?Q?dap1yYCrZNf5w96hEAcOQP/ALNrKF3g0TwSIsIEsRUO7RczAAUc4eKWdTwvu?= =?us-ascii?Q?chk3R4Gbg+CuBu08/QaJ9cmS0usV76k9hsEvRVmU88pbrsu4J7lRre/xtEcX?= =?us-ascii?Q?ySU4FffHJkmolWLXUo4KKWjQspP+aSmV8wnHzVQA0kwEfU3tDAhowOpDfTSP?= =?us-ascii?Q?KLmGfmn9acEAE8S5xyDYq6DVQYdSe/v8QY2qlqcefLnCK9kpc0uCvLEu6Aw6?= =?us-ascii?Q?3E7qWPSi1D3+bKQYY92S4GEbOR0zuq/OYXkK5MoB0m6WamNazAEB9+ldB7il?= =?us-ascii?Q?J3zY+wG5YQ/nbdyg8kQoDXA0hlUTfcNUrisZwPdk?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0ad01cbb-f984-4479-1e92-08db510ddfb0 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2023 04:20:23.6276 (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: sK7MS4jA+1jEI3ZxsnMOaAKA4h7ZtTzhpkYBcvgSPS8tqu6AqmtAQwbTqITXtYnMSivxgn/E3AOn3DqsSQF/Cg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7146 Content-Type: text/plain; charset="utf-8" This patch is linked to the previous commit ("mptcp: only send RM_ADDR in nl_cmd_remove"). To align with what is done by the in-kernel PM, update userspace pm addr selftests, by sending a remove_subflows command together before the remove_addrs command. Fixes: d9a4594edabf ("mptcp: netlink: Add MPTCP_PM_CMD_REMOVE") Fixes: 97040cf9806e ("selftests: mptcp: userspace pm address tests") Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_join.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 627daeb513a0..0737ddd62564 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -863,6 +863,14 @@ do_transfer() sed -n 's/.*\(token:\)\([[:digit:]]*\).*$/\2/p;q') ip netns exec ${listener_ns} ./pm_nl_ctl ann $addr token $tk id $id sleep 1 + sp=3D$(grep "type:10" "$evts_ns1" | + sed -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q') + da=3D$(grep "type:10" "$evts_ns1" | + sed -n 's/.*\(daddr6:\)\([0-9a-f:.]*\).*$/\2/p;q') + dp=3D$(grep "type:10" "$evts_ns1" | + sed -n 's/.*\(dport:\)\([[:digit:]]*\).*$/\2/p;q') + ip netns exec ${listener_ns} ./pm_nl_ctl dsf lip "::ffff:$addr" \ + lport $sp rip $da rport $dp token $tk ip netns exec ${listener_ns} ./pm_nl_ctl rem token $tk id $id fi =20 --=20 2.35.3 From nobody Sat Apr 27 03:26:15 2024 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2052.outbound.protection.outlook.com [40.107.13.52]) (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 691ED808 for ; Wed, 10 May 2023 04:20:37 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bb73D8/UgvZ4CQQg4Oi1hclubNnKmgfdSlqKKmD/ix3Qtr61P5Gi//Nk/DetVUb1P9dMJjCVSLZ+DvUm51AWTJtYTtDUJ7dwcBkyamMHUr4rgHA2kJ6kBdbXL0+ANy5BIIhHgyemaapu4l73Lyp21RDUInKKtnvOS4DoEZAdKEI9ZxTsLV35+pKxqEYWO8AFTYDFr+NgyF55oZ6fABJCwqtrA3qhvgw3R/P1uX4e5nvW1TCQI2+9m7PyRaMMRE/1FXjm8SruUXw2SORoat7Le0f35Tc2c2fpjtyW0h+Z4kuO+Hdrh3NXQ4arnF3nftGLp7bAG9XuVVGEhsl/mSWCXQ== 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=wCV0AEWEtidxTEvBQUI1wBNDYg/Myr+Hzq8yss6HBH4=; b=faYNegEey6aYO60PPUFmG+edt5dwoh7nj4XRsfUL19ofXEoXQlYJj0YF8TOqTbtZzZMyHq2NfYm3o6+PrMnQgB762SNHmxXpeAuYGxflmo9Go7Bo/VZywIQ2CpBSL4QSQ6ruK44BGqphdgU5Ws4XQipl9OyE2iZm+7JFCVSU2aOcO2bRycehobpUSFjW6OdpBSv2MgJ5IyAX16oCLpnU8QTnK6hLYUWEqtfwfVupT0VLuogFHbdaBM6YhRP5kjKYhRFI3Om4XzcQ/9fl6qnpc/CcdsPAdp7uEw5sQP69WrY94c/4VpyMsm41uk3gxSbaqlYBSa9qWBhwlIaNXLCdOw== 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=wCV0AEWEtidxTEvBQUI1wBNDYg/Myr+Hzq8yss6HBH4=; b=y/mJJRtlSZrmz/vGyl+7yWux6JDLitdAz+tXqjR0U2f/7vEFYC1nJS433IYGRRy/q0jJ0adqYs0I3zLOJDdUNuEr0WAKGdIgrUbL4weeAPok9sxPUqju+QRxSOkZx1J445NSdCbG8Ewmuw12+c5tSicisg/YxEeZhJbPDrDyO+F3RCUf/ddXz1tUq70FEhxxJHsaG00AKD9soKgiyufbrA7ID/0AwrDPvoa6TIEQou9aawVE4hfzitHTYZ4oLH0mdjlzcIJMTU1sapacubh0lB79IqExKXV3fHaNvpp0mDMsk1LH+wGl1p4l/Ee6XsI6uBEiEDxMXt0XjzndF5D6RA== 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 DB8PR04MB7146.eurprd04.prod.outlook.com (2603:10a6:10:127::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Wed, 10 May 2023 04:20:34 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2%6]) with mapi id 15.20.6363.025; Wed, 10 May 2023 04:20:34 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v13 3/5] mptcp: export remove_anno_list_by_saddr Date: Wed, 10 May 2023 12:20:10 +0800 Message-Id: <7fcb810112dc5f03328d028b106d737b60b1bc46.1683692137.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYCP286CA0042.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:29d::18) 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_|DB8PR04MB7146:EE_ X-MS-Office365-Filtering-Correlation-Id: 75bfa1fe-af45-45d9-ecbc-08db510de615 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RxK5gx8KAXx35uOjDrXN7r65Lsb8kGJRx3t9nH+EtrP4VJ95Vsg2wuB8281O8SMZEquy//B2wXonfnlSnZrF8LJrZevjjbevW7QztMcpfQktkicjm3K5lZDgVzQKiekjUoM4pKKFlcI0CszTyKGwhZ1ay1pYdJp6b3OBMshQTI6RZMAZ4FVDbgAetkK7sYF2Dq1LkLmhTyCqvaSMNjTKjK5KEfB8nNhgw14d3ieacTtxATce+REOcLdt7GmjNMiqHYjzC6/657QK8uUJ85e9Iyv9T9T9kZJlOzuhUSSVHeJ46lEiAAvecgUNanzfEPdfetMVpIyJxY3n7e+CJtrQhCarOazUA4bn5V58mFtsjP9sCDxcZbAlO3bi8YLgnvAoxEJQC9i9/z5HpLfBipN9DkPXPhM0QNmg2Zv06MA5mLj54EHZZ2JRtFRUeES6Shji0724LGUHwOLgEjszyKsqP+ZzvLPLrRAkmaAM78Hdht4aCTaqQ5UuUMgh4z3ATq9UJIJ0U7ii9ElGf702O++jrd/dAq/eKSbZHzyu4ODZgXcTe0glFXllFjFDGrQmaY+v 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:(13230028)(346002)(376002)(366004)(39860400002)(396003)(136003)(451199021)(478600001)(66946007)(4326008)(6486002)(6666004)(66476007)(66556008)(6916009)(316002)(86362001)(36756003)(83380400001)(2616005)(6506007)(107886003)(6512007)(26005)(5660300002)(2906002)(8676002)(44832011)(41300700001)(8936002)(186003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?SlEOkEmoEFQ3f7eLt3/KW8WCnAkx8g5Zko+mt8W+B4Wjgif2H3kZxow29mpq?= =?us-ascii?Q?YansDO1Gnl4oza40H+h5H029Vns+bor3uODuQia/7MqfgDEE8inGrIX2aGwD?= =?us-ascii?Q?I0oOWqnWkP74s0oiYpWuOa9q0jxWiSsmJZE7P1cwrbKbnGGmzMhdB7hDivRe?= =?us-ascii?Q?+G8x4jocHZqEoyyd5I6Pee1DI9eMHNsMzA3d1kDs1ZEMuI+GaHS6DJTTC8fI?= =?us-ascii?Q?Whfjgclkux+8wvXjHnxEgBSBJg2Jc4tTKqwxxVAFRElqSRKMbwVndlIpeiKy?= =?us-ascii?Q?D6b7HoGMPZZ0OOwmxph60p59Kxhss5DWLS8CMo1sugPSkTB+QdEVcrUMa9i/?= =?us-ascii?Q?uxL0ykddy2JkXQCfKd/yWAi6jMdGdVCMT6HhNtbCLPRJirBxqm4D7Dl4yidQ?= =?us-ascii?Q?KasLDaY9hyxN6BB32qtYdyux2EV1Q7eh2pb2h9OTdq3JdtmnuF074uiqRQ1+?= =?us-ascii?Q?QzrjIy9EJv6FA8uaEpg0j/eYRFG++FBANGvFEwfas55t5iQz/PzR6kTQipdz?= =?us-ascii?Q?fYNuGKkXswyJn6dIEQuqwanaU5kYpfM9wYcxUGuKNLJo+8uBsEtkMoSrCGfJ?= =?us-ascii?Q?zi7Ki2fI0ZV6w7G7n42bCkOBak1/XpqIZuRiaL71k1qYJeORvZxC7GRtM/au?= =?us-ascii?Q?b8grlHX1dtcMx4PCD9wkNt0yIk1wO7u1KwI2ViTDcEJHF1dLSTOgo5fJfQHw?= =?us-ascii?Q?MsGEBpBsd8E5iQM+5b9wbsYObWcCHMhEVQo+A615IGEmHnv0tz8OUVJPWbKZ?= =?us-ascii?Q?60RW10hgLPjodl7rMZGRdjqxaVZWe0QIrKTyw/0fyP+WOoorBjFY1UK4YqP2?= =?us-ascii?Q?feblqzDDmO6oH40uC8Q4CiSOHp3fI5z2YWNGIMfumCkjnWml+YAmDtkkyJU+?= =?us-ascii?Q?xQzy1Djq2jw1HI9x+N8uGIpu+X7WTDcWUcROQcm1Oym2d2S977p+p+Nen9Mo?= =?us-ascii?Q?zAh+XPrNEZ2n2zvZkIXqZz4G7jMzrLf4qfJ7evoq+rdEZPr29bPTAwqW37rq?= =?us-ascii?Q?sQSvDyDkvYIEWqYEOM6mtYyVnkcwagAKdECAodsZEWonkU0XrQFe3V6r8/ld?= =?us-ascii?Q?kxbPya52qhj2kGaxtfn4tpTFBNSyTWLeupjySPPI+XyrfO9zgeSzVm1rm9/O?= =?us-ascii?Q?aROumLvsStxh3XIJfPOMQbVh1w5abSf74uDcWb1p3NvozWsCwa7RW5mpjS9C?= =?us-ascii?Q?u4iP+T6EH5yzeRWWGY8b2eOGvyTxe74YCtN2zYH5fcglH2sfwljUI89owl99?= =?us-ascii?Q?SzFU98WMm9oalkBe1T69cuYEnzsNCEDGIJcttremEQPNRwIKKAqZoIE9qtHn?= =?us-ascii?Q?73Vk20zHqJ+/6ooc3hfSgl4rplpZLO7IoMOIuFQgi3SPmCnZEehIdEUz6K7j?= =?us-ascii?Q?sokyqLhFIWBGuuFAE4lcNqklD3fg7Xp6YbXBecSxXijkRSZNFyiCpmDRhZDM?= =?us-ascii?Q?TI4kYlYRLnxSkEfnb4aFi6IlwEcmWhh6n/zpOpSiLuXGCUwlwGF6r9PJBEfg?= =?us-ascii?Q?0//RFajD55HK8eJarU+qP+MzLdzBPcSaKQvOonsZFKhpf4zkawb1YiZ7hn1c?= =?us-ascii?Q?lMfYVpm73YNZntgaOMgR26ccFYkQT2TN0o9ydnpU?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 75bfa1fe-af45-45d9-ecbc-08db510de615 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2023 04:20:34.3610 (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: f0P58QahEN5Msv90z2CBIrVC6FgsGT+vG+HVgGMhFewyiEYN+cByTbWy7z5/PxTYFHyp7788x2CVeB2AbBwLMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7146 Content-Type: text/plain; charset="utf-8" Rename remove_anno_list_by_saddr() with "mptcp_pm_" prefix and export it in protocol.h. This function will be re-used in the userspace PM code in the following commit. Signed-off-by: Geliang Tang --- net/mptcp/pm_netlink.c | 10 +++++----- net/mptcp/protocol.h | 2 ++ 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/net/mptcp/pm_netlink.c b/net/mptcp/pm_netlink.c index 784145e6a314..0b34b57fc8bc 100644 --- a/net/mptcp/pm_netlink.c +++ b/net/mptcp/pm_netlink.c @@ -1399,8 +1399,8 @@ int mptcp_pm_get_flags_and_ifindex_by_id(struct mptcp= _sock *msk, unsigned int id return 0; } =20 -static bool remove_anno_list_by_saddr(struct mptcp_sock *msk, - const struct mptcp_addr_info *addr) +bool mptcp_pm_remove_anno_list_by_saddr(struct mptcp_sock *msk, + const struct mptcp_addr_info *addr) { struct mptcp_pm_add_entry *entry; =20 @@ -1423,7 +1423,7 @@ static bool mptcp_pm_remove_anno_addr(struct mptcp_so= ck *msk, =20 list.ids[list.nr++] =3D addr->id; =20 - ret =3D remove_anno_list_by_saddr(msk, addr); + ret =3D mptcp_pm_remove_anno_list_by_saddr(msk, addr); if (ret || force) { spin_lock_bh(&msk->pm.lock); mptcp_pm_remove_addr(msk, &list); @@ -1561,7 +1561,7 @@ void mptcp_pm_remove_addrs(struct mptcp_sock *msk, st= ruct list_head *rm_list) struct mptcp_pm_addr_entry *entry; =20 list_for_each_entry(entry, rm_list, list) { - if (remove_anno_list_by_saddr(msk, &entry->addr) && + if (mptcp_pm_remove_anno_list_by_saddr(msk, &entry->addr) && alist.nr < MPTCP_RM_IDS_MAX) alist.ids[alist.nr++] =3D entry->addr.id; } @@ -1584,7 +1584,7 @@ void mptcp_pm_remove_addrs_and_subflows(struct mptcp_= sock *msk, slist.nr < MPTCP_RM_IDS_MAX) slist.ids[slist.nr++] =3D entry->addr.id; =20 - if (remove_anno_list_by_saddr(msk, &entry->addr) && + if (mptcp_pm_remove_anno_list_by_saddr(msk, &entry->addr) && alist.nr < MPTCP_RM_IDS_MAX) alist.ids[alist.nr++] =3D entry->addr.id; } diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index 1a2772902e9d..bfa7d93a1c1a 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -831,6 +831,8 @@ mptcp_pm_del_add_timer(struct mptcp_sock *msk, struct mptcp_pm_add_entry * mptcp_lookup_anno_list_by_saddr(const struct mptcp_sock *msk, const struct mptcp_addr_info *addr); +bool mptcp_pm_remove_anno_list_by_saddr(struct mptcp_sock *msk, + const struct mptcp_addr_info *addr); int mptcp_pm_get_flags_and_ifindex_by_id(struct mptcp_sock *msk, unsigned int id, u8 *flags, int *ifindex); --=20 2.35.3 From nobody Sat Apr 27 03:26:15 2024 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2052.outbound.protection.outlook.com [40.107.13.52]) (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 08484808 for ; Wed, 10 May 2023 04:20:46 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PFuJdEm167K9XuSm4TVnxjIaEjCtM4iBZEKjTTYnFPjPEEzgebIiCNJ0Bz8v7IzJW528yvikNCK0wBSKdlPDyZqBYfOSpbswzcjd2POBaidzStK8mIL2wjVizCMRKwxt+JzWZPfEcE1HWj79/7cRTzbBFuM6BkknJDOBPGY8RkHqt/8d2EgF9mWPll5kry8YHH8KwiB4MQ/MK9qKBnORoHA6fSs2YCOM8mDlo3Mbtzx5pn193f7+5rpc9YYJd3g6tXLJi9N9WQqwbWsPRgOrLrgK55DJ6+wSz7wxLMcBMW5obVJuXCPhFx/ZaBov3uINRaHC1gU/ch2YWWBhs5dqJw== 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=Gdw62iMEnPmwKqDSqm2GpnYwBqpJHmKoISQr/Y3Ah+w=; b=UH15gCZqdYs5L5WZiRrc0BswxVIA8D+ANfk7msjfvpn04QesM+aNB1T67poBBH2P+jm7eEpazG6r/cLL8wUfZS6Jwx6xd5GNs7QoZIt4If1uNIGP1HmrpJIWEmLSyp+Qaxu+GmUB6vswlM81xK7yTIbDOWIDuwAhEaYjk1KaAVpJamvU0mZC9UTIS9sAiZMy0voWMx3+Usy3IQ/Lq3uxy85lboaZ0pxgvsOeDQAyT1vZHl1+LTmdsxUoVMPPp64/H+FrE8hHWlQNMYWFaMXkXzzW+RSry/ISXKP5z3pFxMFrJfNC3lAqlTyfAaF6QbnVSR29rd/+MgfxiDII3tQPgA== 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=Gdw62iMEnPmwKqDSqm2GpnYwBqpJHmKoISQr/Y3Ah+w=; b=pa1gWVlkxGkpQ2IUn2h+HAZrlL3yZ7NjLRnREpFq8lwwDVRkiU9rgKbjRkYV6Ga0oJ28oyoTWxHTW92oOnRfcUxcq/314/lWy1Z3OYMePJNH0aWoKR+XAO8l0O7v4hZ89GcRXaxguL7v2cc/Z8q4BPblIleqJkHf5JDj2VO9wYnRwzibArAY8Wy/F9loUG8T+S4kA8wC4FVcwlJ2eCsuyxPzXj6+2rIyrM7FAVLQ4RWX++6ub7VFsaSGvJggZsyxTBuwTDwHluTFallJyHOF9Up9/n4odi2fYox3mxetrfkiIYgm95drYqBEcabWxhponrUA3hSRadTF8ejzB+43ag== 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 DB8PR04MB7146.eurprd04.prod.outlook.com (2603:10a6:10:127::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Wed, 10 May 2023 04:20:44 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2%6]) with mapi id 15.20.6363.025; Wed, 10 May 2023 04:20:44 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v13 4/5] mptcp: add addr into userspace pm list Date: Wed, 10 May 2023 12:20:11 +0800 Message-Id: X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYBP286CA0005.JPNP286.PROD.OUTLOOK.COM (2603:1096:404:ce::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_|DB8PR04MB7146:EE_ X-MS-Office365-Filtering-Correlation-Id: ae1b74d2-8ddc-4575-39f3-08db510debf6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RewBL3lckMRqArx3rAG8/ZDvdx45mWEsXb5AyTuR4NbdoU6I6tvUIOeey3GKjUYXY5/DMwxfCK7/UKl6pY8hWPkMQ5zFK0oPlSWZOM41laIMhtg72DVyo+iI4bBu1dDbOFV2E6TQtOhwzdDzkWO/IQeROdpQcAN5/QJDHRyj15xNnyG6TYiKHQS00oOV8qOG0pFVTDaRXwAshL+kLWT7OStDkKpcmU2R3XVz9Z00ZilowW4IRKRxJbAo085hGyYoYdee3x4IpC/Jm37YfINiPVzjU+brlbJQVUfEcm4Chrj0Lh4gFbcv3vukGenKeKUc3JvV8mHKDOp9bWSbod4QlPgP2KUZwzbgZWSpXmuiowiGHeSyH2R1XycFOD2MlAu4yV+6YeTtMidmOKFvSHPpK1mpFOjHgKmNnRRfV85Ts3/yDv38SJKyP4rxmKNxXlTAjrEEWKDu9fEmjcXxvWYcmzD18SztvL8A3Fwm+tX6B/2XqQWwsuiINkdGHYYqT+YymxWVVtNQ72l3V7lqySLH41YLofZF8BFobTSdGFkIzgQ= 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:(13230028)(346002)(376002)(366004)(39860400002)(396003)(136003)(451199021)(478600001)(66946007)(4326008)(6486002)(6666004)(66476007)(66556008)(6916009)(316002)(966005)(86362001)(36756003)(83380400001)(2616005)(6506007)(107886003)(6512007)(26005)(5660300002)(2906002)(8676002)(44832011)(41300700001)(8936002)(186003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3H4BTJ3/qNTEjXMFr6/kPZHgp63QAxIEJReAnK3IQuZOJMV2Eg0EYbz0VKP1?= =?us-ascii?Q?OR/mNoRNg8nnYGBpAuU92LlUG70SxR6EvHU1zkpMDH/sb9HQAq3YUIL6ua78?= =?us-ascii?Q?3fQhd/N+64Sy/oCX4ZMsO5bWJZ76rDmky4/tEy2CKl8Je3IdWHokJxr5F2rd?= =?us-ascii?Q?aVZCqhaWxyO3+9TaUP28IF0ptM/gMeh96hTiWDneu7+DxNom7fk5D/WF95SQ?= =?us-ascii?Q?l85KDekbjZBhgNLIZ2TkMrnFwC2D0r8lbEqQ2gVtQ78TDtC+KYV0fYO2LzTl?= =?us-ascii?Q?yGJYqWuW3szHYJFEXaIj4y1PDoKFSCbliTqGyfH46XMYGhjrE3vmUwzKx6tE?= =?us-ascii?Q?eaizL7ETeZsNRTI522kt1gYCrRQuaKEU8ZgbWakGKKbQxyGoTH7P7kUax1SD?= =?us-ascii?Q?PQyVQrUE1DSpvHIfyfAxbLZsWGxadblqByVcmnQn90gy7zVf5HIT0pRBe2uL?= =?us-ascii?Q?8WxbZdQ3p/2rNaOuVwUX5FBAuH4lZ6dkZuec+66LtTxtAQJV4Ida+1YH1mvy?= =?us-ascii?Q?R+ie8wajgLvN7Gjpw9byVQrPQ30lpNC+J+DSYB2+KRIF4kXegxuG4nqFnSHN?= =?us-ascii?Q?ZApIv5Y0/2HmgZuNvSuudZSoACtk0v12aYlqO8BoFklUl+DVv4NSb+TUwIlY?= =?us-ascii?Q?ollIPeui9oun58T3GfYLDbae61991D7r7gzxx+V+ObMAevLx/WIN/Yeud7ME?= =?us-ascii?Q?GXE/CloQkko1UMySt0bpoJq3OOVDfR1QtbxwjSEoTGsDGoz3Z/Fg5Xn6TFzw?= =?us-ascii?Q?pqxNTxCubb7B8xCfd4K6+03/zSNJCl6wUEqnUnmhe3Dukr+bFUyXcb58Bqw+?= =?us-ascii?Q?uiOf8vfOzCjf+9cGw3j9s61VlgjGnIny6VYR65PnYqZ8+h2ihot2ucVETsyw?= =?us-ascii?Q?zKCR8Vq7mQ1Xc8jhZL865uNI2vLZeJsVG3p1D5Ehx2raehGCtHrqezX50pdO?= =?us-ascii?Q?qMfyAWgmr2D9KRaUEM0spZX29pb6oO0LTTusieDASep89xdCKYKJjy3lMyGE?= =?us-ascii?Q?qrlLhKcIGDBIsdtjLdtF3Oq4ocAyX8t//wJrNuoC99JyFtjVV8vDYfq2guSY?= =?us-ascii?Q?xkfHN6fzn64XOdKK2FYkyzWc+Op6bOlC1XplLHaXnB2mYezR+Rs74oXLx73j?= =?us-ascii?Q?sMT9zwaFlzTeAY85s68/GUHRgUJw2tymm1roEo7YcDGrfbIvfu/Fe41kyhDv?= =?us-ascii?Q?a6HB6NBQLPNFmVXKyXtJ7yEVKyjG12TPKBxWv6CBE9qu1mgQZ8X/d83UAL7v?= =?us-ascii?Q?xKWBuEvXZyB617Z5PdMML+9z45MUq/TMI1I9We3tLc+sxX4hPPINIV8sio/f?= =?us-ascii?Q?ItDvAwya7fAktvmTHVG8lhWxn03oKpV3F8+yx6D3QUxdIzqNHZivghGo9Umk?= =?us-ascii?Q?1zPH0GumtuaoyX2Wk6CNaoKvpm3c4WXNnG8CZWYNFTVZbQ6ExqO3DW5w3Ohv?= =?us-ascii?Q?qoDtabM+B2OCqPdRu0QZRciCVF86EWhfS1esJJRHuk4asgEo6wgvxVePolHi?= =?us-ascii?Q?K4Ckuyq7oW/gvlh45Jos/zr53ID8Ihb0bcs2BSqDGhXp+W+DII6h9KumeSS+?= =?us-ascii?Q?rDO6yjdoB/thrH5whtHhUm/+fZD2aLdD3DoqLCkM?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ae1b74d2-8ddc-4575-39f3-08db510debf6 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2023 04:20:44.2540 (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: BK3JkAJp+P4HBx1h4m9MhehLGnwOdMh0O0+/yYffAPK4nzJsX81BI2tH4hE8LEyzawNXHRjvCrzbmdRuA5TDlA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7146 Content-Type: text/plain; charset="utf-8" Add the address into userspace_pm_local_addr_list when the subflow is created. Make sure it can be found in mptcp_nl_cmd_remove(). And delete it in the new helper mptcp_userspace_pm_delete_local_addr(). Add address into pm anno_list in mptcp_nl_cmd_sf_create(). Remove it when connecting fails. By doing this, the "REMOVE" command also works with subflows that have been created via the "SUB_CREATE" command instead of restricting to the addresses that have been announced via the "ANNOUNCE" command. Fixes: d9a4594edabf ("mptcp: netlink: Add MPTCP_PM_CMD_REMOVE") Link: https://github.com/multipath-tcp/mptcp_net-next/issues/379 Signed-off-by: Geliang Tang --- net/mptcp/pm_userspace.c | 48 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c index 6beadea8c67d..016df47d7d6a 100644 --- a/net/mptcp/pm_userspace.c +++ b/net/mptcp/pm_userspace.c @@ -79,6 +79,25 @@ static int mptcp_userspace_pm_append_new_local_addr(stru= ct mptcp_sock *msk, return ret; } =20 +static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk, + struct mptcp_pm_addr_entry *addr) +{ + struct mptcp_pm_addr_entry *entry, *tmp; + + list_for_each_entry_safe(entry, tmp, &msk->pm.userspace_pm_local_addr_lis= t, list) { + if (mptcp_addresses_equal(&entry->addr, &addr->addr, false)) { + /* TODO: a refcount is needed because the entry can + * be used multiple times (e.g. fullmesh mode). + */ + list_del_rcu(&entry->list); + kfree(entry); + return 0; + } + } + + return -EINVAL; +} + int mptcp_userspace_pm_get_flags_and_ifindex_by_id(struct mptcp_sock *msk, unsigned int id, u8 *flags, int *ifindex) @@ -246,11 +265,17 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct g= enl_info *info) return err; } =20 +/* If the subflow is closed from the other peer (not via a + * subflow destroy command then), we want to keep the entry + * not to assign the same ID to another address and to be + * able to send RM_ADDR after the removal of the subflow. + */ int mptcp_nl_cmd_sf_create(struct sk_buff *skb, struct genl_info *info) { struct nlattr *raddr =3D info->attrs[MPTCP_PM_ATTR_ADDR_REMOTE]; struct nlattr *token =3D info->attrs[MPTCP_PM_ATTR_TOKEN]; struct nlattr *laddr =3D info->attrs[MPTCP_PM_ATTR_ADDR]; + struct mptcp_pm_addr_entry local =3D { 0 }; struct mptcp_addr_info addr_r; struct mptcp_addr_info addr_l; struct mptcp_sock *msk; @@ -302,12 +327,35 @@ int mptcp_nl_cmd_sf_create(struct sk_buff *skb, struc= t genl_info *info) goto create_err; } =20 + local.addr =3D addr_l; + err =3D mptcp_userspace_pm_append_new_local_addr(msk, &local); + if (err < 0) { + GENL_SET_ERR_MSG(info, "did not match address and id"); + goto create_err; + } + + spin_lock_bh(&msk->pm.lock); + if (!mptcp_pm_alloc_anno_list(msk, &local)) { + GENL_SET_ERR_MSG(info, "cannot alloc address list"); + err =3D -EINVAL; + goto anno_list_err; + } + spin_unlock_bh(&msk->pm.lock); + lock_sock(sk); =20 err =3D __mptcp_subflow_connect(sk, &addr_l, &addr_r); =20 release_sock(sk); =20 + if (err) { + spin_lock_bh(&msk->pm.lock); + mptcp_pm_remove_anno_list_by_saddr(msk, &addr_l); +anno_list_err: + mptcp_userspace_pm_delete_local_addr(msk, &local); + spin_unlock_bh(&msk->pm.lock); + } + create_err: sock_put((struct sock *)msk); return err; --=20 2.35.3 From nobody Sat Apr 27 03:26:15 2024 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2077.outbound.protection.outlook.com [40.107.13.77]) (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 77731808 for ; Wed, 10 May 2023 04:20:58 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f1wl3wwYznKgUBg6ILO3WTzEfcr4RljYncCWeNEcTqRVwLiQZ7fvIhWSO0XQkLAguvCQQxQqH9GtBBqaGjKvm8pViSvWqdsqDeMoNFxtQNuczL/fXTdLHG46BT+oOZNpo5K6QOu9iKd8S5+wq5jf/0od40qBr4mWg5WfaQN+ISlBBG4QhrSy2uOZd+6SK/1EE7IAv8nZz6iatQMWMWDidwrC91/rnzNA/9QsccCjWakIsua2Ixlj+k3P07CCo66tB2BkBvTxgg6icWXpM03FlBIQ7/Rtcsa8JKpNbIhczG17Zz6x4XMLnotdOZh+acg1szCl10k6Z1gOTjmzK8njAA== 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=v161FelxJj6ksbbSTqbRIq4ql4rHaAQ9WupnvL+gNW8=; b=N3LAp7f0AuQnzgFym3iJ1whaKvrXF1t/2dygTRUhMPSphii2ExIRVr7UWGmSj5ewKVtQhHPThMxjrDECscf2Etu77zytnMeLnTp71il2Ii6DikMIZXrToeG7pOYF9Z8wwzyZMf891nxMU8frY9v+xV0pbdV0hdC7BsX3yfpPGn606NAwp+rvElrMHL5AH/rtgJ4aWnLp9p1OVJn29QSEQhNoZRAooIwecUz3X7kSbm3IoAONHugt/FpImzTm6rVz4Ygd3kb/fT2Ydwcv7j1O9Qner1sxyQEGxos7aYlsHww+1vJPaAYivATw8f4Vea7mO+0823dSwVPb6nbvHMMVmg== 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=v161FelxJj6ksbbSTqbRIq4ql4rHaAQ9WupnvL+gNW8=; b=1lpQM2dprhb/nu6fiFUj1K1MQIqJPWxoVLq8OeHzfpZgsnrzhPdy5e04w+HNb2o5HCCOn0ddGuXIo+vD5cLhwFpFIxJASi5R8A3EWS7B1SrTxrGbuDSNgnxhp//LJPVtFccm95GHfxOW53bziuiOoEmdHgjmtIwRupQ787gqZa6Faw8ZmfCt8bsj8pccsZKOSAGuYrqyytpv2/9kFULE79XsYN9xYU8NtvlJGunP9+xuWdg0yv797glRy/V74DuT18UETT4B7b31clKZZZycr6OgfoTwMJfbMM6UYNaazGlX2+JiYi5DptbJZf9vjDjTAeLomj3G3IFKIjHgKlyjgQ== 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 DB8PR04MB7146.eurprd04.prod.outlook.com (2603:10a6:10:127::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Wed, 10 May 2023 04:20:55 +0000 Received: from HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2]) by HE1PR0402MB3497.eurprd04.prod.outlook.com ([fe80::ab8:3754:66a1:2ef2%6]) with mapi id 15.20.6363.025; Wed, 10 May 2023 04:20:55 +0000 From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v13 5/5] selftests: mptcp: update userspace pm subflow tests Date: Wed, 10 May 2023 12:20:12 +0800 Message-Id: <6350d66fcc037183977d7dd6cae5de14c14f770b.1683692137.git.geliang.tang@suse.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TYBP286CA0012.JPNP286.PROD.OUTLOOK.COM (2603:1096:404:ce::24) To HE1PR0402MB3497.eurprd04.prod.outlook.com (2603:10a6:7:83::14) Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0402MB3497:EE_|DB8PR04MB7146:EE_ X-MS-Office365-Filtering-Correlation-Id: 4c902288-babd-46ed-28d5-08db510df2c0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: F3XAl0kMRQh8gl7hBKPKNJ8M769g40kmjeRABv3oWEazghYcHabSXzML7/houN0nJvoTxdUXYq1JEo2i000HrUgBQ/qg9SjTGU4TqsjvSuJ90x1WtGq/ThSoevnvNgXDPgy9Eu5PB8Unefeh7mCs/wOBZCl7eL81oyoJsNNANYQJRQUSjP9CyIi7urK+RAiEzUOoL76c2pt/5L5MXsyKdZhbTWEXfxpJy4Hzjmg2nHaskOQZqU5SnKM66mnOmWxQPoD3jetTAN1sQ9uKVSnCRDiPf/j6aBEl5AqCbKoRAI9G+/w4FNYpmBLCIGeaK7R6N6X330GxT6jI4iBO0fe916POrdldylucOhXkcWckru1yvOSCxbZtcsvfJIscTOLJGE8iEWMteFDQrAy9THpON4DX1Z8NMIXL/EJo/oqMSEp/OIInrYIAgCvyPqS1LxqVAZ6dPrZVhyphLivWopqOSh5aGuYu9uT8Ldlq7h2cmOWlkoSN2LojfIDBQSHJWZmGFtAhJbgJAYTcMzc+Ag7xLYTeD1lSTIE++qkphdHrDF8= 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:(13230028)(346002)(376002)(366004)(39860400002)(396003)(136003)(451199021)(478600001)(66946007)(4326008)(6486002)(6666004)(66476007)(66556008)(6916009)(316002)(966005)(86362001)(36756003)(83380400001)(2616005)(6506007)(107886003)(6512007)(26005)(5660300002)(2906002)(8676002)(44832011)(15650500001)(41300700001)(8936002)(186003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?hQQsPHVKCtOWIwCS5//jlNlR/wpabhI1KMurmpp6Mcqf1jjzi6foaV9+zDiH?= =?us-ascii?Q?b55eTXBNsJTcuQEkIVeaUfPVqZCc92CFml4jeHW9pqpQFEAy0iOY5e5O1GVH?= =?us-ascii?Q?fHHdusXuWfeanTnCGtjLVgk87S+N49lrOMc3fymEstBoyrzdOUVWrAiKzBQG?= =?us-ascii?Q?ay+cFCkDnpM4atap3i6Rp6ZuZWBK1p6kcudwtaNCRs1p4H7hh3KsVWBQmAGG?= =?us-ascii?Q?oOA0JhieZDtrMxtJSoQ7LYEqJTlewVSxEroeh30wmV9hrnzTHLLqk0XIc9Ul?= =?us-ascii?Q?pGLcNWHjq+6ocFKrOhNtSPhGfXBA6jzh908JQ8G7BHo1f+nK9gANxGrxJ3l5?= =?us-ascii?Q?WkcoN3SPtuJZqofOfRgvneaZQpQdcAZ3q0Gofh6ALnUFLMp+iLjsKT0teut3?= =?us-ascii?Q?tLPiUeLNKxQLbcUta0olyg3eWscn6mbjI3klnVstYpJOPy/BcdNvEoPgevA1?= =?us-ascii?Q?sUG/kFMn4kZfmbaycuu+xO/gdWprzZ5JC1ARy0hoZ4ekgJLMwMUCevPI6nXO?= =?us-ascii?Q?s6DEEj/eYzfs6rC2ZGqJD+kPhHCgVxHGv3wrnyv9y28iIalMkITJkTRmVRfn?= =?us-ascii?Q?45Rd75RNz6IGnh6UsTt/GragoSZhyyJ1IObSUbFj0Xg7k232cZCTbhd9iCBw?= =?us-ascii?Q?5Us8hsU0RA3CyOXIPaDmkrY4DJvfrUVnsVZzulrqTifDc3CQeNIQtJp/fMkF?= =?us-ascii?Q?YamW2ZZEblgyPsYrAw9FgY9DS/57p4127eGVPquNpHLRxG0MwX11j9xUXNgL?= =?us-ascii?Q?xTcZNWDziV972SdJr7NypFY99sbsuHWhA6nVznRoPWQuFImnC/DMK4AMeAL/?= =?us-ascii?Q?wSqSDHOYZA44Zy19e7evjDHUliWc6fseUHPTIUKfwsL9MSSerH6N834UpMCE?= =?us-ascii?Q?E7IElZy7x10tt5wS+7/gNLU3RXYp76sV49z3yPU3AEjvFSgzYFw4ExF3APz1?= =?us-ascii?Q?3Aa9J8DNBU1RHvCo30o2OgeFkPt+CKf7kG9E9s+yBoVXy04d0U9XHXrHwplB?= =?us-ascii?Q?/oiKx7ojX6ZDpss2pokG0trzqd+ciiXkuW6fUlh0MOiNSpSYVXDEJkqUyTcK?= =?us-ascii?Q?/QBxZcuFKTPSLZJfx3vzxwKFSWMq4RGVSgr6eF0QjDRf+fBDDxkTx5Fz+DKw?= =?us-ascii?Q?piASCXpkTxDyiABqobgIOJrCdsAbEAsb0fGslHC5qEhEnmay8b41/UEWsx9P?= =?us-ascii?Q?CS9kJyPU3/rhALLIg+Evoox5xFy23x2ar68o7Fo7n3/O7gJ3/crRcXC7dE8Q?= =?us-ascii?Q?cIsJxdcXj8xw56HspjjreoudDTa0V9qBYT24+F7Ylw7RMskx9Lpq3BAMhopl?= =?us-ascii?Q?T7xNHzESdb3aniU/H3QZP0biQo1VZ0avDcAvCBzAehLh7oUDvajb5rVw7nvG?= =?us-ascii?Q?vBLQue9SyNYOZRyxqyU9ASwghCWevI2T45xotJsxlRoUy3Ld5zpDD5f81CEw?= =?us-ascii?Q?Hp/LpZnYA2Vt+bHnOMwKeJUiiJNKHO7tBa/thigxagKtmcw2wKDrtS0TiA0X?= =?us-ascii?Q?YiDZt9dTLyobZjDAku/vamFFNKPCiLIdDS9WTl+yU4Uh3ruFAbM9vuJl1qTz?= =?us-ascii?Q?iVXorZBKtWfil+C9avB9AFa3gTxmwylpamSe18I4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4c902288-babd-46ed-28d5-08db510df2c0 X-MS-Exchange-CrossTenant-AuthSource: HE1PR0402MB3497.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2023 04:20:55.4867 (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: T28J9QrJNZwoRIdOdm1gHjZHbQxHYLxHh/okz9QHndwBgUixzlprOA3qGvpvYYVRub2B0VRUnVhUbxypUpA2ig== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7146 Content-Type: text/plain; charset="utf-8" To align with what is done by the in-kernel PM, update userspace pm subflow selftests in mptcp_join.sh and userspace_pm.sh, by sending the a remove_addrs command together after the remove_subflows command. This will get a RM_ADDR in chk_rm_nr(). Fixes: d9a4594edabf ("mptcp: netlink: Add MPTCP_PM_CMD_REMOVE") Fixes: 5e986ec46874 ("selftests: mptcp: userspace pm subflow tests") Link: https://github.com/multipath-tcp/mptcp_net-next/issues/379 Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_join.sh | 3 ++- tools/testing/selftests/net/mptcp/userspace_pm.sh | 3 +++ 2 files changed, 5 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 0737ddd62564..6aacffa32bb6 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -939,6 +939,7 @@ do_transfer() sed -n 's/.*\(sport:\)\([[:digit:]]*\).*$/\2/p;q') ip netns exec ${connector_ns} ./pm_nl_ctl dsf lip $addr lport $sp \ rip $da rport $dp token $tk + ip netns exec ${connector_ns} ./pm_nl_ctl rem token $tk id $id fi counter=3D$((counter + 1)) add_nr_ns2=3D$((add_nr_ns2 - 1)) @@ -3152,7 +3153,7 @@ userspace_tests() pm_nl_set_limits $ns1 0 1 run_tests $ns1 $ns2 10.0.1.1 0 0 userspace_1 slow chk_join_nr 1 1 1 - chk_rm_nr 0 1 + chk_rm_nr 1 1 kill_events_pids fi } diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index b1eb7bce599d..02465ffa075f 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -621,6 +621,7 @@ test_subflows() :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip dead:beef:2::1 lport "$sport" ri= p\ dead:beef:2::2 rport "$client6_port" token "$server6_token" > /dev/nul= l 2>&1 + ip netns exec "$ns1" ./pm_nl_ctl rem id 23 token "$server6_token" > /dev/= null 2>&1 sleep 0.5 verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server6_token" "$AF_= INET6"\ "dead:beef:2::1" "dead:beef:2::2" "$client6_port" "23"\ @@ -660,6 +661,7 @@ test_subflows() :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip 10.0.2.1 lport "$sport" rip 10.0= .2.2 rport\ $new4_port token "$server4_token" > /dev/null 2>&1 + ip netns exec "$ns1" ./pm_nl_ctl rem id 23 token "$server4_token" > /dev/= null 2>&1 sleep 0.5 verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server4_token" "$AF_= INET" "10.0.2.1"\ "10.0.2.2" "$new4_port" "23" "$client_addr_id" "ns1" "ns2" @@ -737,6 +739,7 @@ test_subflows() :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip dead:beef:2::2 lport "$sport" ri= p\ dead:beef:2::1 rport $app6_port token "$client6_token" > /dev/null 2>&1 + ip netns exec "$ns2" ./pm_nl_ctl rem id 23 token "$client6_token" > /dev/= null 2>&1 sleep 0.5 verify_subflow_events $client_evts $SUB_CLOSED $client6_token $AF_INET6 "= dead:beef:2::2"\ "dead:beef:2::1" "$app6_port" "23" "$server_addr_id" "ns2" "ns1" --=20 2.35.3