From nobody Mon Feb 9 13:57:37 2026 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6638:2248:0:0:0:0 with SMTP id m8csp375710jas; Thu, 27 Jan 2022 16:38:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJxf2c86dLBMqzfNE/Zac+ICRTvEFsSH8LsUYdz5tCJtQkLMZjvHfXjKtIT876mengsbxPEF X-Received: by 2002:a17:903:1250:: with SMTP id u16mr5905708plh.126.1643330329259; Thu, 27 Jan 2022 16:38:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643330329; cv=none; d=google.com; s=arc-20160816; b=UnO81QpMgIS0E4ZcvHq25YzZm2rmrA9aCyiu1Zgw3cwFRYOJ8d1+UQh/1csBX3htV0 ME9Dw++rX7MGX4Psz6GWBcBaIOFu+Ml35xw9ZGuqtTJGb4W9cvMYaGXmT5Dh6NKdIt/7 85Z0rxCab2W/dp53QK7aiPh+Iwys17eJ9Icnmc05UV/jTKCS6BLEhzfXwHxKKtScqNko L7+Ztldt2GHtuU0+JwT255o9cPLDMHKNfzNoKsTWeCFBEhDKjJ9RHO8yGiO3lvP7TdHu eXlYML4Bq71cQn+KvNmq449iPXUxTDpVfUjtFSYpFiXQuzTNLD8O3SmrjOOLHcyPfFvG 8ieA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:to:from:dkim-signature; bh=w+9RFBh5/2gz+M7+eiXD70geCAboqcLECW187hI3JhE=; b=EJtr58UkWWkBnzTvwq1GwHCJeAgFWPYEbNfKasR3Jwq+YH/NHdWPcU0sb5AGrm6eJI ABepgjI+gui6eZn/kY/DzGZLDo6W068MjSTq2vtWsJT627MxweFYxVcNHQ2kjSDCljfd nhB7PHbqkJ5OlrGfQAe36IvT3cKkDEYv/0oZ23gPxSMB/oMLxb1z0z5bH7itEPUIX983 +HcigMV/H4CTK6dH7wjyoY/ZEbeIDwBe8SF8p3smxjLtpwGh8/IkWtJBy8m3E2kPDqJM Ka1tbC25ahW14PNpxHrY+pBJw5ClDise4ZJVWzFm9LpX37wQOaxnuBsmfEl9x5KEpq5o v/0A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=eo7kpJjp; spf=pass (google.com: domain of mptcp+bounces-3340-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-3340-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ewr.edge.kernel.org (ewr.edge.kernel.org. [147.75.197.195]) by mx.google.com with ESMTPS id v8si4277823pgi.789.2022.01.27.16.38.49 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 27 Jan 2022 16:38:49 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3340-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) client-ip=147.75.197.195; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=eo7kpJjp; spf=pass (google.com: domain of mptcp+bounces-3340-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 147.75.197.195 as permitted sender) smtp.mailfrom="mptcp+bounces-3340-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.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 C1E621C0F06 for ; Fri, 28 Jan 2022 00:38:48 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 53ED42CB0; Fri, 28 Jan 2022 00:38:46 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) (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 0F21E2CAC for ; Fri, 28 Jan 2022 00:38:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1643330324; x=1674866324; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=sa72yrPBqKXhPZ16dGGP/HtQ1q4TOd82BWQ+bNO9jK4=; b=eo7kpJjpiU3y+T1w5/AfZT+DKk1ftlQ6Eqapc07yacrWYSnTGRL+TKjt lpir/MHopTCIC31UO88BfYA4jDBwgPdH14nWKins9g31DsewDF+0BStxN t9ky0nq7ALoCKGIAAsT1vWhIPLYX7+48f/kvzjFMK3+L4ke0QRajGOiTr xap7n7HAx1C7/bVjU6y+ZZjmPIsAOKxzvgxfEaNUVD6NdTbYRSPHaKgs3 nsVJDFYHh6ehYpNqrg3prq9FGd6YhNrnYMdvtx5WOrY4qM0S+sCzZeu+2 KCB3+JA4UmVzGH8h9VgJfs3muhV+VpoL11BqDmQrhwJbdEAQvZ8eKGEQy w==; X-IronPort-AV: E=McAfee;i="6200,9189,10239"; a="245846912" X-IronPort-AV: E=Sophos;i="5.88,322,1635231600"; d="scan'208";a="245846912" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jan 2022 16:38:24 -0800 X-IronPort-AV: E=Sophos;i="5.88,322,1635231600"; d="scan'208";a="564000993" Received: from otc-tsn-4.jf.intel.com ([10.23.153.135]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jan 2022 16:38:19 -0800 From: Kishen Maloor To: kishen.maloor@intel.com, mptcp@lists.linux.dev Subject: [PATCH mptcp-next v3 1/8] mptcp: do not restrict subflows with non-kernel PMs Date: Thu, 27 Jan 2022 19:38:05 -0500 Message-Id: <20220128003812.2732609-2-kishen.maloor@intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20220128003812.2732609-1-kishen.maloor@intel.com> References: <20220128003812.2732609-1-kishen.maloor@intel.com> Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Current limits on the # of subflows must apply only to in-kernel PM managed sockets. Thus this change bypasses such limitations for connections overseen by non-kernel (e.g. userspace) PMs. Signed-off-by: Kishen Maloor --- net/mptcp/pm.c | 3 +++ net/mptcp/subflow.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/net/mptcp/pm.c b/net/mptcp/pm.c index 1f8878cc29e3..6b6220895929 100644 --- a/net/mptcp/pm.c +++ b/net/mptcp/pm.c @@ -87,6 +87,9 @@ bool mptcp_pm_allow_new_subflow(struct mptcp_sock *msk) unsigned int subflows_max; int ret =3D 0; =20 + if (READ_ONCE(pm->pm_type) !=3D MPTCP_PM_TYPE_KERNEL) + return true; + subflows_max =3D mptcp_pm_get_subflows_max(msk); =20 pr_debug("msk=3D%p subflows=3D%d max=3D%d allow=3D%d", msk, pm->subflows, diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c index c8126986793e..a7b2d6fd1c1e 100644 --- a/net/mptcp/subflow.c +++ b/net/mptcp/subflow.c @@ -62,7 +62,8 @@ static void subflow_generate_hmac(u64 key1, u64 key2, u32= nonce1, u32 nonce2, static bool mptcp_can_accept_new_subflow(const struct mptcp_sock *msk) { return mptcp_is_fully_established((void *)msk) && - READ_ONCE(msk->pm.accept_subflow); + ((READ_ONCE(msk->pm.pm_type) !=3D MPTCP_PM_TYPE_KERNEL) || + READ_ONCE(msk->pm.accept_subflow)); } =20 /* validate received token and create truncated hmac and nonce for SYN-ACK= */ --=20 2.31.1