From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DE12F41D8D for ; Mon, 27 Feb 2023 08:17:12 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D555F410EE; Mon, 27 Feb 2023 08:17:12 +0100 (CET) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2068.outbound.protection.outlook.com [40.107.223.68]) by mails.dpdk.org (Postfix) with ESMTP id F0B3440ED6 for ; Mon, 27 Feb 2023 08:17:11 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TNqWrUdRAZZV1ttUAySiVC4KebVd3cXA4EkJ4t8UDd4/8n5zCx+BsGn+iQyv/KG48P9r/6zRXk9SkPfnWuz+rR0GbsRQM1GYHpbPAWpGCtSIEFJO89DIS9b8o4Rtcl3Qjk5nRKR3EzD7bzMdGupZu6SXTUDRW/UMWzbCwe6spPuh41aWEHEMSvFIsG9Pur+Qi6sDZiKyhAIsNuPPduuuEEbdwLuRj4je7q0F6MegiDEnkuAU/9d2pSC2xBrOjswpqwXR+AFi6zYxYOVTrbxpjmgk6hs9WjfZbd1trZULYlQ1gHQZLjGBhenZkHv+AcNLBH8Q4IPdcC1W4UAKXqJDUQ== 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=P6IiWlJGfVhQCiAxzmy9ZAno/E030YNxDpPgBVlGfy0=; b=PRuyJ5al7hcF+mh4O+gp2oYTI4IoflvP0NfgCa9yFoN/Q34ZmEXi4OwMkD7ttS26Lz0PzJ9igVAYRNClpH7smITwgcEWwRSupwUxPAb9iWVw5PfughH51fFyZyKYQ6MByXjp2eusVnWZmoH9dCktWAcSa7kvXEN1zxeTfy1VmErSJL7YOmwJIgiSv8GtC1BaUbd6QcsFEFtjsXFtGHSaUW4FJlD4GOK14O6KkbdeuaybDsouUaD5xNLYYo5jEM58z/6hBhV1tIOgdCbwNCm0CMoUfym+VXBiGWgE9TahVAv58Q5+75G7Aij/3fju3kzRtL9e9h+seVOeeOX/E1cSwA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=corigine.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=P6IiWlJGfVhQCiAxzmy9ZAno/E030YNxDpPgBVlGfy0=; b=nv8V/yT7n2iB/MJGawwDb5VEIC9Tcn8BdyU5VE21UlwDv6IMTnAKmjpGHaugBFnFliBke3CxBWEh+ec9kM5PRN8pGSNjTkiFUdCqArZibgCe9+womzUFg2aXuEHx51uCopxVjB1cvvJaBdl7L0i6ilc/OXVgo6PY73R1OfaQ4gdm82qKtlEqbmOu99u9hnOlDfOw9HF1dedM4VMSw6jtGhWWB768fZ3PWE0bIAKd/ED3F7u+ObcMXJ6xwvHHH1wvPATrN9WTFop38EQZhPjNFwgdJjgnDIbXh71Hzg149UpWEWs9c2nvPLufFdSAepX+f/b3dOwR7WkhlYk/EZp+sA== Received: from DM6PR18CA0027.namprd18.prod.outlook.com (2603:10b6:5:15b::40) by SA3PR12MB7924.namprd12.prod.outlook.com (2603:10b6:806:313::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.26; Mon, 27 Feb 2023 07:17:10 +0000 Received: from DM6NAM11FT080.eop-nam11.prod.protection.outlook.com (2603:10b6:5:15b:cafe::b8) by DM6PR18CA0027.outlook.office365.com (2603:10b6:5:15b::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.29 via Frontend Transport; Mon, 27 Feb 2023 07:17:10 +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 DM6NAM11FT080.mail.protection.outlook.com (10.13.173.105) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.16 via Frontend Transport; Mon, 27 Feb 2023 07:17:10 +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.36; Sun, 26 Feb 2023 23:17:02 -0800 Received: from nvidia.com (10.126.231.37) 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.37; Sun, 26 Feb 2023 23:16:59 -0800 From: Xueming Li To: Jin Liu CC: Chaoyong He , =?UTF-8?q?Niklas=20S=C3=B6derlund?= , "dpdk stable" Subject: patch 'net/nfp: restrict flow flush to the port' has been queued to stable release 22.11.2 Date: Mon, 27 Feb 2023 15:00:55 +0800 Message-ID: <20230227070107.15664-147-xuemingl@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230227070107.15664-1-xuemingl@nvidia.com> References: <20230227062349.13764-1-xuemingl@nvidia.com> <20230227070107.15664-1-xuemingl@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.126.231.37] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT080:EE_|SA3PR12MB7924:EE_ X-MS-Office365-Filtering-Correlation-Id: a8c3e4f7-363c-42c5-f2c0-08db1892a429 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: W3WJiaU46PPfsciUbZLg28S0UwPv9HLmQR96bSQgAVKoHO5Dg/5hewZdt6kU19o4KD/WlwIMTiNhXwP+u8JAfJdkM4dxQ37Dnyk7VOsosZZBvOy/rOp2MgtarZVJqpvYYo56FljdMEDCkZTLtnGRnGot732XII6aVtuTAzdHXOwk/wJbre9xG7Rx1T8YxZU/qeBnIu9pxavlDNegg7zYzpMtci73ONv31sYODUXal9oZL5BTjlgb8Uu+DviE0XMQxytgDKfxVRxqByf1UlVYfe3fxfKQC62evXGRowKmdfHJUeUWB7iGJD51QbmTTMmueOvfe6jc3gS3Ak0MTmsL7aEV4NSxGvFRt9ToHnr5ySRoJupMDZx+pN+pO08pxaKx1MejqW3Tn7LbVaD+esLI8x/v9IOicR+ovej3q5PdCCtEyDEROZjjDGpavcRTQPM9gTgsrOep1kkQMWXJ8vGatq5XcQHkfCUukv59NFMsiYCG+8tSLHtLOMKgjf51RV//MsXQG/TxYuTUQd1Oc3SiMkVkurcn2ql8L706DnGx1htQsW1zmFc1vMExlUiGZ9AsAYD9qYsYk4aZQrb8/EOFrVuJ1t8oM542wVFZ0KUQcK8G7fwPigAkzavahtscW6pp2Lw/pIH2bfH7eNH7ROpWfXApHsyNW/xe6qv9W11ESzAvlrswSldG6s1IvPXZIX9tRaYYrEQwO2D2zfLOKBGYMpJjpbeNnj+DVi+S6nctQwzZUgNeBQmQBtdoVF1XMshfCkxLTxRxwTJJLrFhfImjLtpcZBI1Lfyf/VDBPnhxoLO7S2E5j2k6xXcfwv3+R8QV 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:(13230025)(4636009)(376002)(39860400002)(136003)(346002)(396003)(451199018)(46966006)(40470700004)(36840700001)(7636003)(41300700001)(55016003)(1076003)(36756003)(6666004)(26005)(16526019)(356005)(6286002)(186003)(53546011)(40460700003)(7696005)(86362001)(40480700001)(966005)(316002)(54906003)(478600001)(82740400003)(70586007)(70206006)(8676002)(4326008)(6916009)(8936002)(2906002)(34020700004)(82310400005)(83380400001)(36860700001)(66574015)(336012)(426003)(2616005)(47076005)(5660300002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2023 07:17:10.0155 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a8c3e4f7-363c-42c5-f2c0-08db1892a429 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: DM6NAM11FT080.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB7924 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 22.11.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 03/01/23. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://git.dpdk.org/dpdk-stable/log/?h=22.11-staging This queued commit can be viewed at: https://git.dpdk.org/dpdk-stable/commit/?h=22.11-staging&id=31f4d9ce135aba0a6f91f8b31329ec849c1a4b12 Thanks. Xueming Li --- >From 31f4d9ce135aba0a6f91f8b31329ec849c1a4b12 Mon Sep 17 00:00:00 2001 From: Jin Liu Date: Thu, 16 Feb 2023 14:36:44 +0800 Subject: [PATCH] net/nfp: restrict flow flush to the port MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Xueming Li [ upstream commit c2bd03f27fdd79f3440511237296eb51105ee9cc ] The flow flush function will destroy all the flow table on all the port of NFP NIC rather than the provide port. Modify logic, only destroy the flow table on the corresponding port. Fixes: 30ecce522732 ("net/nfp: support flow API") Signed-off-by: Jin Liu Reviewed-by: Chaoyong He Reviewed-by: Niklas Söderlund --- drivers/net/nfp/nfp_flow.c | 18 +++++++++++++----- drivers/net/nfp/nfp_flow.h | 1 + 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/drivers/net/nfp/nfp_flow.c b/drivers/net/nfp/nfp_flow.c index 30e1edacb2..b3f4861ae4 100644 --- a/drivers/net/nfp/nfp_flow.c +++ b/drivers/net/nfp/nfp_flow.c @@ -339,7 +339,7 @@ nfp_flow_table_search(struct nfp_flow_priv *priv, } static struct rte_flow * -nfp_flow_alloc(struct nfp_fl_key_ls *key_layer) +nfp_flow_alloc(struct nfp_fl_key_ls *key_layer, uint32_t port_id) { char *tmp; size_t len; @@ -357,6 +357,7 @@ nfp_flow_alloc(struct nfp_fl_key_ls *key_layer) nfp_flow->length = len; + nfp_flow->port_id = port_id; payload = &nfp_flow->payload; payload->meta = (struct nfp_fl_rule_metadata *)tmp; payload->unmasked_data = tmp + sizeof(struct nfp_fl_rule_metadata); @@ -3488,7 +3489,7 @@ nfp_flow_process(struct nfp_flower_representor *representor, return NULL; } - nfp_flow = nfp_flow_alloc(&key_layer); + nfp_flow = nfp_flow_alloc(&key_layer, representor->port_id); if (nfp_flow == NULL) { PMD_DRV_LOG(ERR, "Alloc nfp flow failed."); goto free_stats; @@ -3796,14 +3797,21 @@ nfp_flow_flush(struct rte_eth_dev *dev, void *next_data; uint32_t iter = 0; const void *next_key; + struct rte_flow *nfp_flow; struct nfp_flow_priv *priv; + struct nfp_flower_representor *representor; + + representor = dev->data->dev_private; priv = nfp_flow_dev_to_priv(dev); while (rte_hash_iterate(priv->flow_table, &next_key, &next_data, &iter) >= 0) { - ret = nfp_flow_destroy(dev, (struct rte_flow *)next_data, error); - if (ret != 0) - break; + nfp_flow = next_data; + if (nfp_flow->port_id == representor->port_id) { + ret = nfp_flow_destroy(dev, nfp_flow, error); + if (ret != 0) + break; + } } return ret; diff --git a/drivers/net/nfp/nfp_flow.h b/drivers/net/nfp/nfp_flow.h index b0c2aaf6d8..8071243b86 100644 --- a/drivers/net/nfp/nfp_flow.h +++ b/drivers/net/nfp/nfp_flow.h @@ -222,6 +222,7 @@ struct rte_flow { struct nfp_fl_tun tun; size_t length; uint32_t hash_key; + uint32_t port_id; bool install_flag; enum nfp_flow_type type; }; -- 2.25.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2023-02-27 14:08:45.583583800 +0800 +++ 0148-net-nfp-restrict-flow-flush-to-the-port.patch 2023-02-27 14:08:40.949237000 +0800 @@ -1 +1 @@ -From c2bd03f27fdd79f3440511237296eb51105ee9cc Mon Sep 17 00:00:00 2001 +From 31f4d9ce135aba0a6f91f8b31329ec849c1a4b12 Mon Sep 17 00:00:00 2001 @@ -7,0 +8,3 @@ +Cc: Xueming Li + +[ upstream commit c2bd03f27fdd79f3440511237296eb51105ee9cc ] @@ -14 +16,0 @@ -Cc: stable@dpdk.org @@ -25 +27 @@ -index eba6aea40f..0c38925701 100644 +index 30e1edacb2..b3f4861ae4 100644 @@ -40 +42 @@ - nfp_flow->mtr_id = NFP_MAX_MTR_CNT; + @@ -45 +47 @@ -@@ -3549,7 +3550,7 @@ nfp_flow_process(struct nfp_flower_representor *representor, +@@ -3488,7 +3489,7 @@ nfp_flow_process(struct nfp_flower_representor *representor, @@ -54 +56 @@ -@@ -3868,14 +3869,21 @@ nfp_flow_flush(struct rte_eth_dev *dev, +@@ -3796,14 +3797,21 @@ nfp_flow_flush(struct rte_eth_dev *dev, @@ -80 +82 @@ -index b8da752a9d..d352671c2c 100644 +index b0c2aaf6d8..8071243b86 100644 @@ -83 +85,2 @@ -@@ -223,6 +223,7 @@ struct rte_flow { +@@ -222,6 +222,7 @@ struct rte_flow { + struct nfp_fl_tun tun; @@ -86 +88,0 @@ - uint32_t mtr_id;