From nobody Mon Feb 9 14:14:08 2026 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a05:6a06:869:b0:4b8:7781:bd2f with SMTP id d41csp4153222pis; Mon, 2 May 2022 13:52:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyZIZY8F1pzW948pnrb0o1oTcVHsO9N7bw1I9wa9b0PwqpAiZWjaIlXzAmo9AABvlLIoKOs X-Received: by 2002:a63:5011:0:b0:3c1:e24a:e5ea with SMTP id e17-20020a635011000000b003c1e24ae5eamr9201266pgb.359.1651524775523; Mon, 02 May 2022 13:52:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1651524775; cv=none; d=google.com; s=arc-20160816; b=SgR12zIEnaGTkNngsEs3RfnWK79ltDTT9MJ1CFN+fFkgXRXev3E2dDHc5RSblbl3s0 OoycN3Vyxye00bA3R58O1NQf1Uh8C7S7JXXfJOniDye96M/nRmEyhr3Nz8NmTpcWtKYL 32QjynrDgcgzhcHTzmrg0vvnWkm11eDvvW3v3/IYOEixdfroXwyQYrwG6fjXGnweQwOU ojpte6/qOoWg27cj11J4ofj2OgnaeR/hhB0/0SDiQSxPbPSQCCK4099wbtQCB8rVdgR5 Inf0B2ut5RIGuK6C/sjdXReCReqlxasRKWjhve96184TXPlWYwVAqZ73xouSrsEHVLNq KDUg== 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:cc:to:from:dkim-signature; bh=J7DGS7l03NjbecjqQDdP7OrhMQDOscxAH580g9HHQDA=; b=txXphjHGrbU6OgJ3c8owDw0QuluQxAA/a0OLUjp0D3mLFzrdqHdaTVIC0RIS/9y9/z G2YZaItK+6+Ne2MR1YOY9C7m2qxo62CrSQ0sgYcFZQa3bYc/JSzYo6fGj8kYu9hTgIAj cl4XeuIm0Q1dJW5riYCb4GPVEtwnzr+Bo8rhmCi/DUBzlZeOGfkJh0cEr20RzJTNVzpL js0FqdYTMXYMFDUkBiLIXHq3TCiChmL3k0US6g5B2Ixuyl+VRoeFNWn/EIeXzpRU0axs Ye3ytN1buvdBkrRapbj9o1YrPMjSjffWnhqMdqCO/9vejdv+fU7ZKMdl6n0v1sQT3kg4 02ZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=IajvVgYP; spf=pass (google.com: domain of mptcp+bounces-5032-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="mptcp+bounces-5032-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id q17-20020a17090311d100b00153b2d16657si10404108plh.607.2022.05.02.13.52.55 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 02 May 2022 13:52:55 -0700 (PDT) Received-SPF: pass (google.com: domain of mptcp+bounces-5032-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=IajvVgYP; spf=pass (google.com: domain of mptcp+bounces-5032-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="mptcp+bounces-5032-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 sv.mirrors.kernel.org (Postfix) with ESMTPS id B5CA0280BD1 for ; Mon, 2 May 2022 20:52:54 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id F22403212; Mon, 2 May 2022 20:52:49 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) (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 01EDA3218 for ; Mon, 2 May 2022 20:52:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1651524769; x=1683060769; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=9ZNXtLvhcp5bF7tlcfkg+UESgvpjmFh340RfFxsO+X8=; b=IajvVgYPZlNlXb28hl/VqmEpiVuv2bqEfyFNaaLS3nirUczTo7mCKggQ Xy7uwTnZ2OfTehuBQUr9GGjqmN9o33NqpWrDGwcF0Td2/jbETHEcoOQME HqBwLN7nxFZHY6iWDjiVfHSioNAMoySZfeoX1BOFz/mKBrkyrq0AKfczS HEHvlKn6vY1wsfJkWvxgXATo/C+kxXxwrbp7kqV6U8EhBEDigurbLKTOu X3mdoYWoW0Lv3efY2pBv53fguuZcodihBdtItFkx0+xOwubr6KlxO4n2j KVP2ls4yKccNW27Zv2MXzSNtUNFRIHVyMrSS+yUBON3QPGzRUEJwqWj4h A==; X-IronPort-AV: E=McAfee;i="6400,9594,10335"; a="247875194" X-IronPort-AV: E=Sophos;i="5.91,193,1647327600"; d="scan'208";a="247875194" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 May 2022 13:52:44 -0700 X-IronPort-AV: E=Sophos;i="5.91,193,1647327600"; d="scan'208";a="733619592" Received: from mjmartin-desk2.amr.corp.intel.com (HELO mjmartin-desk2.intel.com) ([10.212.141.55]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 May 2022 13:52:44 -0700 From: Mat Martineau To: netdev@vger.kernel.org Cc: Kishen Maloor , davem@davemloft.net, kuba@kernel.org, pabeni@redhat.com, matthieu.baerts@tessares.net, mptcp@lists.linux.dev, Mat Martineau Subject: [PATCH net-next 7/7] mptcp: allow ADD_ADDR reissuance by userspace PMs Date: Mon, 2 May 2022 13:52:37 -0700 Message-Id: <20220502205237.129297-8-mathew.j.martineau@linux.intel.com> X-Mailer: git-send-email 2.36.0 In-Reply-To: <20220502205237.129297-1-mathew.j.martineau@linux.intel.com> References: <20220502205237.129297-1-mathew.j.martineau@linux.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" From: Kishen Maloor This change allows userspace PM implementations to reissue ADD_ADDR announcements (if necessary) based on their chosen policy. Acked-by: Paolo Abeni Signed-off-by: Kishen Maloor Signed-off-by: Mat Martineau --- 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.36.0