From patchwork Thu Oct 27 21:26:45 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bodong Wang X-Patchwork-Id: 1695689 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256 header.s=selector2 header.b=LyCm4MGV; dkim-atps=neutral Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4MyzKl2fZRz20S2 for ; Fri, 28 Oct 2022 08:27:39 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1ooAPT-0004lM-C9; Thu, 27 Oct 2022 21:27:31 +0000 Received: from mail-bn8nam11on2041.outbound.protection.outlook.com ([40.107.236.41] helo=NAM11-BN8-obe.outbound.protection.outlook.com) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1ooAPP-0004gI-Kh for kernel-team@lists.ubuntu.com; Thu, 27 Oct 2022 21:27:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jQcTJJWCXtmsJHchgUGORjE9e7hr9Xt1o+5aSfjLqaWG9dArpD0yiyM5fFpnHzRf5buCkqaW5oAR/nRNPu/JKFsDmoboHc3HcsgaUYA2jFNFqi47mAy9ROih8SKuUUASYydItRdHFlEjYTfjUhQDkCK3r7Dms7RfUzTTzh8GSGp85RgK5+d1ePPGTogQtSR5TMxPo81gg4DN7ksuHVLmq8HTAFzi80zmI4CnOkaxQPynjGuSOtf9V9JSD+8fFpI+kd/I2xvxi6PubWCpyIhHDPNkcZXYiLXAHtE5xU8NkuJrVZPMWhuPsUMnx/q3YL73NK2azzWXVwc0dflQz4zabw== 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=QTvB8TVGJYkRl9z0bFmMlJK9HskNEGFwMYkPRoot+3A=; b=UbOOWeWfH+ycSmSr/FbI32Ke/VPPEGDmQmuSrD+IhzL6lla4Qf6Era6wnd/m+etNwczmx7FsbS4gLYtdiTJqzufVBpGnalHhOTNHpNnE1aCdEozGxKA4ljxT50KyCSsYhllGnXCrGebB7Ep2pOnbcVld/aKbV7o975SycZRtCd6Ki7pX7syzL6IAyzIVZ1xuBBWygEAu3E60P4einJ4lZatf9+ZsxAfH9vtGiZqmRHrAF2c/8MoWqmawyDhrBwpBsoZw4KDcC7SrW28BbCK1+gox4mfVR+9MK6xkab8ny8349+c5X2tGbjs5bqXh0oLP/DH2BOr1zlV+U+uit/yfew== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=lists.ubuntu.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QTvB8TVGJYkRl9z0bFmMlJK9HskNEGFwMYkPRoot+3A=; b=LyCm4MGVdccO7tBzAyzVaCJvtAINhClM02IVqNIgv7RCwuvVVvzaW8dKNWwwxspcH6fuZPw7h2IwOpu/LmQRC216RpS87dTsNfy308+RDit6EwwbIr7Rqa5smaYvmDFvYx5Vp+tJVpr58bfFJqg8/6Xu7685us9l5BVL8v4U/79OfRJYT0Fn1HWoZ9+QlnclXZOp/u4fSvEa7rEQtOH1qmi7kbE3QEvvScSQx1AgTGdLB/TCv4TtuiedFwiBHIgGdQatjxjA7MQkHs0idnnb/K3Ct6p3LFMWlZuPQG5+dvhwB7CXsIBUkQ3fOk/Uzn8qW5354KWnIN5gnpTjPYBDRA== Received: from MW4PR03CA0237.namprd03.prod.outlook.com (2603:10b6:303:b9::32) by PH7PR12MB7260.namprd12.prod.outlook.com (2603:10b6:510:208::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.26; Thu, 27 Oct 2022 21:27:24 +0000 Received: from CO1NAM11FT055.eop-nam11.prod.protection.outlook.com (2603:10b6:303:b9:cafe::7c) by MW4PR03CA0237.outlook.office365.com (2603:10b6:303:b9::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.28 via Frontend Transport; Thu, 27 Oct 2022 21:27:24 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by CO1NAM11FT055.mail.protection.outlook.com (10.13.175.129) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5769.14 via Frontend Transport; Thu, 27 Oct 2022 21:27:24 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.26; Thu, 27 Oct 2022 14:27:12 -0700 Received: from rnnvmail204.nvidia.com (10.129.68.6) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.29; Thu, 27 Oct 2022 14:27:11 -0700 Received: from mtl123.mtl.labs.mlnx (10.127.8.10) by mail.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.29 via Frontend Transport; Thu, 27 Oct 2022 14:27:11 -0700 Received: from sw-mtx-hparm-006.mtx.labs.mlnx. (sw-mtx-hparm-006.mtx.labs.mlnx [10.9.151.93]) by mtl123.mtl.labs.mlnx (8.14.4/8.14.4) with ESMTP id 29RLR02G032221; Fri, 28 Oct 2022 00:27:09 +0300 From: Bodong Wang To: Subject: [SRU][F:linux-bluefield][PATCH 07/10] netfilter: flowtable: fix excessive hw offload attempts after failure Date: Thu, 27 Oct 2022 16:26:45 -0500 Message-ID: <1666906019-80328-8-git-send-email-bodong@nvidia.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1666906019-80328-1-git-send-email-bodong@nvidia.com> References: <1666906019-80328-1-git-send-email-bodong@nvidia.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT055:EE_|PH7PR12MB7260:EE_ X-MS-Office365-Filtering-Correlation-Id: 8a613459-281c-46b8-e047-08dab8620a1b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7KkwXGWdAMXeqxkDg3l0GTbr575ofBSBRW464uCb+RcMvuOGBi/sgqIJ7217CMyX9HZiTYPlzKPyxoGDnHWA25N2umYh0R5Tw/AulcJpH+WHvUx54zMoO3fT4CRoIbpQpL6qgW1vqSkoKKRy+uSIU0CrfPFdAUgo86I+rKTsLBy7Jw7/aRrUroV230aH7Gh1B7IQBJUmfJX8doalUG3FSH+7aQxlb17Dg5JRlyQ1dqaUHU3RjnlcntLUZOoAj7SRzb8Pw7Pbfb2OdSUmrUY6FFKI+jJ/5cpeEMPzyiTr83PrL4uXzHVYkdn7lOaJcP/olEegbUE95yLgu2dBD3nbGSGOp1b5SsRXSphV5u7MgLJVdHESBcGKJ6iOu38aew5nMZT94acWJda6+EhHyMdHYV0yCxbW9AF7bt1A3V2pmySYkTf/zFBCvDLgLTNO57pUVbAQ3fZsXD5W/uJ8MAIQSio/x9EPmCF+v7xiKlMRNZDxoDAP6ffaad+OeL1wezdJp/bjBtZOJOm/orbOoDEbjQSJjOD4lkx9rJon4vMuJAzJ+2VeEkfECiwbBh4GmzmznAosMS1/jusyXbuRVVqNZsQsCXOOqsqQM8QzDZU3vPSl+Oa8CUrzDqk2Jyso2UayFUgm6YTwGuWz5QppGsJqqORYfW/IK4wECNLm63hkWjMuPDx8lDz+tVbECkk6Qe843ZhAeFi79z1UakfF5CvPaTy/CaESxdRJfBWE7u14U1KCHQkccXeroTpV34Hw2t8QoyZbd4BFpWcrNEB/NXODKJ+RB29bBNPad9bE0OVjzlIVt5E4XK9r2KOHUg3Tuvly4WyEYDuitSADMqIsM4/Fc7n/kuLQZCmEJysU3idVtHM= X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230022)(4636009)(396003)(346002)(136003)(39860400002)(376002)(451199015)(46966006)(40470700004)(36840700001)(40480700001)(7636003)(86362001)(356005)(82310400005)(966005)(36756003)(2906002)(40460700003)(107886003)(41300700001)(4326008)(8676002)(82740400003)(70586007)(6916009)(5660300002)(8936002)(70206006)(54906003)(316002)(83380400001)(36860700001)(6666004)(26005)(2616005)(478600001)(47076005)(186003)(336012); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2022 21:27:24.1157 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8a613459-281c-46b8-e047-08dab8620a1b X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT055.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7260 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: vlad@nvidia.com Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Felix Fietkau BugLink: https://bugs.launchpad.net/bugs/1995004 If a flow cannot be offloaded, the code currently repeatedly tries again as quickly as possible, which can significantly increase system load. Fix this by limiting flow timeout update and hardware offload retry to once per second. Fixes: c07531c01d82 ("netfilter: flowtable: Remove redundant hw refresh bit") Signed-off-by: Felix Fietkau Signed-off-by: Pablo Neira Ayuso (Cherry-picked from upstream 396ef64113a8ba01c46315d67a99db8dde3eef51) Signed-off-by: Bodong Wang --- net/netfilter/nf_flow_table_core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/netfilter/nf_flow_table_core.c b/net/netfilter/nf_flow_table_core.c index f0dae0e..f8cd832 100644 --- a/net/netfilter/nf_flow_table_core.c +++ b/net/netfilter/nf_flow_table_core.c @@ -281,8 +281,10 @@ void flow_offload_refresh(struct nf_flowtable *flow_table, u32 timeout; timeout = nf_flowtable_time_stamp + flow_offload_get_timeout(flow); - if (READ_ONCE(flow->timeout) != timeout) + if (timeout - READ_ONCE(flow->timeout) > HZ) WRITE_ONCE(flow->timeout, timeout); + else + return; if (likely(!nf_flowtable_hw_offload(flow_table))) return;