Received: by 2002:a05:6a10:c7c6:0:0:0:0 with SMTP id h6csp1652770pxy; Mon, 2 Aug 2021 07:07:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyBq5Q8EPprAv1MU0qMTQwB1iy7iAKvd52Nn/CFcOVD84oSgG5KLfDqm233FLXDdDCjVc2/ X-Received: by 2002:a92:7b10:: with SMTP id w16mr2046084ilc.241.1627913271614; Mon, 02 Aug 2021 07:07:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627913271; cv=none; d=google.com; s=arc-20160816; b=wjgz+nzrt5JW7v6fRr9R8AGzIG7R/HpW9CEEfGM2mGYa//K2WsDaKMmiw1kDgMl35w dTZn1ysYCwifAMx9iS2trQu0AJwnWEXsi2x0wyEAP3wGQTP8P29eVkdHjElHF2iHFaPd u23Oo/IOv87tpJ+pAPxBk7aN2a46YU2W0u8RliuyB7vkeTQEg9uKaxcbzesL9mhyMhu4 RI3qVx4PirqzifeVJAzKHCVTYMwsCVlnEGSCZYw82s24akMMLXBTORGYpuniIE24jSPa /GoKwsXIPX3mvxC53KDPlkzRbPPCVbPdrvbwJR1wXlKcs/FEE2eYwbldHft9ItBagwpx EaxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=m7WdTqZKfzio0eAKZFrsFEdA8f6/HH5KgVtqzHV9LEU=; b=QC1f1IdOH/f3WLupOq5gGVxkM4WyPeDTFRm3RORkgIJgxi+bybaqIoqSdvLQC0w/q1 5DTTa+5Wlcu4lBf1bBoZ4riDmGVe0fwczmua8qTnQq/HCOtNLxQNmx6dUGQSkc2K6/82 kz57BrBMgmQ5tM6ry/FGcH+JlaMscM98nq1vGDmI5x2+qWGgTvRe29r7MDh0d4NN+lRe 1qbhIF6xqrcZV2TGIY3VAzx1XmNWbN8ioU8Vy1vHBonJEeMS7QF+vscbWspWosvjjDfy dUrkKPG0RpDqZs7z5kbMWSinfHwNE9UyjnfQzbenWiYVrTgLzveclffGDUCuNhQzYIdR dN4A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=OIvEkgwp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k40si11991032jav.47.2021.08.02.07.07.40; Mon, 02 Aug 2021 07:07:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=OIvEkgwp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236412AbhHBOGH (ORCPT + 99 others); Mon, 2 Aug 2021 10:06:07 -0400 Received: from mail.kernel.org ([198.145.29.99]:40902 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236493AbhHBN7f (ORCPT ); Mon, 2 Aug 2021 09:59:35 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 3036661178; Mon, 2 Aug 2021 13:55:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1627912550; bh=aVv69bOH2TtShIyhTj773uLwMnJXJi6e8yAXHGAmDkA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OIvEkgwpNdmcV5vpNL58JgkN04sjWwYnxMeOwjHTWJtI6Sp3CqRLhxi9U/cKWv/Oa 3oG7wnS7zJfA+Ozqyhs2g8Etm+U7dyHXC2QbcKAKiXRccKGmp44SynIoBX9c9Xcf5F tSO6477KzCW9hEFgBr00vDnC4aA+rW2+AVsI5EQM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Florian Westphal , Pablo Neira Ayuso , Sasha Levin Subject: [PATCH 5.13 043/104] netfilter: conntrack: adjust stop timestamp to real expiry value Date: Mon, 2 Aug 2021 15:44:40 +0200 Message-Id: <20210802134345.440503465@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210802134344.028226640@linuxfoundation.org> References: <20210802134344.028226640@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Florian Westphal [ Upstream commit 30a56a2b881821625f79837d4d968c679852444e ] In case the entry is evicted via garbage collection there is delay between the timeout value and the eviction event. This adjusts the stop value based on how much time has passed. Fixes: b87a2f9199ea82 ("netfilter: conntrack: add gc worker to remove timed-out entries") Signed-off-by: Florian Westphal Signed-off-by: Pablo Neira Ayuso Signed-off-by: Sasha Levin --- net/netfilter/nf_conntrack_core.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c index e0befcf8113a..69079a382d3a 100644 --- a/net/netfilter/nf_conntrack_core.c +++ b/net/netfilter/nf_conntrack_core.c @@ -666,8 +666,13 @@ bool nf_ct_delete(struct nf_conn *ct, u32 portid, int report) return false; tstamp = nf_conn_tstamp_find(ct); - if (tstamp && tstamp->stop == 0) + if (tstamp) { + s32 timeout = ct->timeout - nfct_time_stamp; + tstamp->stop = ktime_get_real_ns(); + if (timeout < 0) + tstamp->stop -= jiffies_to_nsecs(-timeout); + } if (nf_conntrack_event_report(IPCT_DESTROY, ct, portid, report) < 0) { -- 2.30.2