From nobody Mon Feb 9 19:04:35 2026 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6a06:1788:b0:4ac:5e5b:1ad1 with SMTP id y8csp538643piq; Fri, 8 Apr 2022 18:38:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwwytY62Iu80lpx4PPd4CbSa3Cgd49i7n3idv/UglEewQXembAZwzg5Lq5gsuWh/1mQfTwv X-Received: by 2002:a63:dd13:0:b0:382:59e3:180 with SMTP id t19-20020a63dd13000000b0038259e30180mr17947646pgg.497.1649468320187; Fri, 08 Apr 2022 18:38:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649468320; cv=none; d=google.com; s=arc-20160816; b=li2eIWLftIR7MyB2tC7wJfSLMSB454c76dVoMdPk9yDWaiK9aT03tBknRukpnNc+8K FgySKamCbB9JmjKjaFMslvnpfkBAGVCLuo1HaCbvwI9VSv9rHUHRM1NByYgqxW12vU5/ lj7eUz7Ae320SgQGpXwjyZpUZWq4AM9GtZwG5iLSpsprQ/7m6FayqYBmvNXTw6IEmT5M 3oSODu8p0kNeOf2W1SRvH7cXV5zC3sOWRS+Hc2JiX9KRR5ZCi/xbsOP+9UwjI+vfr8VJ Mvlh5HjadNoxtvbUTp6Kq6TTL70NpbZiF014cv/liApemaAmWzNlb56dqKn7UuL/OvCP 1TMg== 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=hHu0eZL8esBbr2Tbv/3xJeIDB24jR0afNwWAg9Lyxo0=; b=fEnMUbhDaHw5xcPjKrjdXaPKHWKFDZ9J2Qi4AR+Knmvem6+y1/JJHcnGEXbDqEZOMb C16RZ61XxKYPmDFRv/UjMR60xovv/ZQXnHGRdefHxT/tYU79rbUrEoAW3SalCh3Xhg6x zBVeZzZUrP7rWuw6rGCY4SEYRtsZPOygvzwpYYuiU6LHEIQVWmdnAKwZpKqJpcMAKe21 uRMnW5ZlzhUME6n+WMbaGzIdFaXLke5Fwe3AqCNel863J5O1C23Wf3JxrBrlKEqoSSiB 0SKXCLCfCyAXS7vHAh0lJb5HEyDVnnhfL2mfL0BI/fyI5RRqxgJZl7Xm6Kr2CoYRFzS6 xR/g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=khK+tYpX; spf=pass (google.com: domain of mptcp+bounces-4697-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) smtp.mailfrom="mptcp+bounces-4697-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from sjc.edge.kernel.org (sjc.edge.kernel.org. [2604:1380:1000:8100::1]) by mx.google.com with ESMTPS id g6-20020a170902934600b0015838a4fd9dsi418521plp.64.2022.04.08.18.38.40 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 08 Apr 2022 18:38:40 -0700 (PDT) Received-SPF: pass (google.com: domain of mptcp+bounces-4697-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=@intel.com header.s=Intel header.b=khK+tYpX; spf=pass (google.com: domain of mptcp+bounces-4697-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) smtp.mailfrom="mptcp+bounces-4697-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 sjc.edge.kernel.org (Postfix) with ESMTPS id 7CB243E034C for ; Sat, 9 Apr 2022 01:38:39 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 73FB0651; Sat, 9 Apr 2022 01:38:38 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (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 A9F93622 for ; Sat, 9 Apr 2022 01:38:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1649468316; x=1681004316; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=sKHGYS4wSoiHYtJWAVjOUe7mFJkoa0zCDSkyK1QyfBM=; b=khK+tYpXbb7sGbbV4szmR4OcUCycroK3IE6RLDkVVMjAUrr0YeZ3umpR /XwRfmO+DIgxQw+G9uqEe9dU6zL4dsgcvhfU3HxWmwjyeGe67u32pjPxh 9h/hdwucricPvJ0D7TLUqanHFhRPi6UOpHxkaAQ2+jlfakllxi+MB36bV hHXgSu6g0qc8W2Xwn3C/8JAutcIOWuF3DDHHY9BobEkY2PrGiJl9QpW2w 52RvO9dnt4Qf0lkW+9eqjunlORxRC0jICq29Q7BdR3/FsO239A1XZlGU2 LayWXSQQ2yS2T4yyQqTA1BT/cI1Wo4xOj1CBnshwkRZlerFUh6+eGmfCx g==; X-IronPort-AV: E=McAfee;i="6400,9594,10311"; a="261921143" X-IronPort-AV: E=Sophos;i="5.90,246,1643702400"; d="scan'208";a="261921143" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2022 18:38:29 -0700 X-IronPort-AV: E=Sophos;i="5.90,246,1643702400"; d="scan'208";a="698436067" Received: from otc-tsn-4.jf.intel.com ([10.23.153.135]) by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2022 18:38:29 -0700 From: Kishen Maloor To: kishen.maloor@intel.com, mptcp@lists.linux.dev Subject: [PATCH mptcp-next v9 01/14] mptcp: allow ADD_ADDR reissuance by userspace PMs Date: Fri, 8 Apr 2022 21:38:12 -0400 Message-Id: <20220409013825.1877395-2-kishen.maloor@intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20220409013825.1877395-1-kishen.maloor@intel.com> References: <20220409013825.1877395-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" This change allows userspace PM implementations to reissue ADD_ADDR announcements (if necessary) based on their chosen policy. Signed-off-by: Kishen Maloor --- net/mptcp/pm_netlink.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/net/mptcp/pm_netlink.c b/net/mptcp/pm_netlink.c index a4430c576ce9..98b205c2c101 100644 --- a/net/mptcp/pm_netlink.c +++ b/net/mptcp/pm_netlink.c @@ -369,8 +369,16 @@ static bool mptcp_pm_alloc_anno_list(struct mptcp_sock= *msk, =20 lockdep_assert_held(&msk->pm.lock); =20 - if (mptcp_lookup_anno_list_by_saddr(msk, &entry->addr)) - return false; + add_entry =3D mptcp_lookup_anno_list_by_saddr(msk, &entry->addr); + + if (add_entry) { + if (mptcp_pm_is_kernel(msk)) + return false; + + sk_reset_timer(sk, &add_entry->add_timer, + jiffies + mptcp_get_add_addr_timeout(net)); + return true; + } =20 add_entry =3D kmalloc(sizeof(*add_entry), GFP_ATOMIC); if (!add_entry) --=20 2.31.1