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 30263439FE; Mon, 29 Jan 2024 15:24:46 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AC8B4402B1; Mon, 29 Jan 2024 15:24:45 +0100 (CET) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2086.outbound.protection.outlook.com [40.107.243.86]) by mails.dpdk.org (Postfix) with ESMTP id 1761E4029A for ; Mon, 29 Jan 2024 15:24:41 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bk6TJSr1+XetMDCruRWY7tCz+KrsKt8T5sQYStuMU2Yy+2GDyAE4/3OYgvQLWDXJxikPdVvs+/p9qgu84Z4YDDL/hwt9GyRvZSMfXegRxva3V/+oWFdAnacHAIjQ4vGVCdwFLjUv5VTZ4jEdlKkgqufzZ6vDb+nEFE38BUZM629zEeQpEtINGYT7nhf9cKpt5XxeyNSPdRSv+AJEZ0uLbaxpUoM1jHMCWsDDoWhuf4LutrV0pk8hrvd5u27QkQFpp40QY7re/vJIlURGaahtvdgmlkl2iveLQKe7o2aB/IGndSfkWG+1RH7NP45iNyK9nvI0/CKBHPOG/lS/BtFlRw== 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=L4thSouRbAP15yrhDwVCG/FAJCkaR8p4pybV+s8UxnI=; b=bQ8v+mBeRtxPu9L5uL5vcltHekXHzE9scVIAR2Yj3Xhyitkr02VKJHyiTZqM7YIp8UcQbp/dkyMRmNQQmmo7oP+LHO7Dwq3xptbBbtqNgUnUooBS3DuypM5UzdWworHC6NX5A25cXMMxCh/qZT6SyOCV4LOdQSdKpg+JFmu36tzpPNFgK6G43YSLvVy8bl6Kn3AopmVJvb3dMIoeY2sXGmO2+VC+p2gd4XP8tk+bB8BXFCZ4spLZ5KXDFCUpv2cF5462QeA/sZGpu/EtGixKYeJfNfw9FFD3STiVVevi+YbeXOQ4uA2XI8g6fIgonUiwrFXgGNeQsGH8HpixhwVwyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=L4thSouRbAP15yrhDwVCG/FAJCkaR8p4pybV+s8UxnI=; b=UZA/CULpyOhkvxqfII0fBKE1ZEevu3YYfsyC25iupOwfoBW1djhB+vF3UWXVn2KGQTWLXa8gT8Al0TPEoFxPOrknUVPxZzYL8X04V2Q4a/VbKqbnRNo3KCXZJEDU1e59kcy02r7JZKjIxaCkMFPeFIVs7e7nZkjnPKUxAek+gkk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) by PH7PR12MB7986.namprd12.prod.outlook.com (2603:10b6:510:27d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.32; Mon, 29 Jan 2024 14:24:36 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::815a:45e6:cf5e:479f]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::815a:45e6:cf5e:479f%4]) with mapi id 15.20.7228.029; Mon, 29 Jan 2024 14:24:36 +0000 Message-ID: Date: Mon, 29 Jan 2024 14:24:30 +0000 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] ethdev: add template table resize API Content-Language: en-US To: Gregory Etelson , dev@dpdk.org Cc: mkashani@nvidia.com, Ori Kam , Aman Singh , Yuying Zhang , Thomas Monjalon , Andrew Rybchenko References: <20231217093205.321082-1-getelson@nvidia.com> From: Ferruh Yigit Autocrypt: addr=ferruh.yigit@amd.com; keydata= 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 8Zk= In-Reply-To: <20231217093205.321082-1-getelson@nvidia.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0151.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::12) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|PH7PR12MB7986:EE_ X-MS-Office365-Filtering-Correlation-Id: f93a196b-94ea-4456-6289-08dc20d604e5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OGN9lxa0sjb+KqV/UoVDpwD2Lfut3rCxMkoJ8HagqGdwZuHF5HciJNL7i4gBfYqw7I/yx1jQjtrqJXJdCFyQG93HptsqHMYMRRjwGx1pXvH95DrLv2E3GKX3UI8QLC020MMn8H1gKcn7s4zcLaaS1Os+Z1+riJf+iGc3fSxoUzChy0Xxt2cKP0Fy3ZjxLCJN/TGE0AgMhtqCITVqzIFpRQC3TGdmKSooI2jmfW4KDkFgfn3DfwFexIeHSCuxJBB1vdmazVsYoVkh7cQI1//oITL0K3PFKIoXFqcaUkNMLFxJ98MEkGI4GjKZzQxGxPQLHnfvySBbecAfkTdO0kAPHdLYRRj2gBf5e9CxlYUL8/aALJ6+D87cEkVsyJXEbu3QCRreaJiifEJALnHOlGjrl8xAtJBJoddlr6GBg1X88za5nKOEhzOakaleh5OF/Zglo+EdY52thprCmPcWHG0lHJoPUhF496iqQ2EShUWm01H8ZFRVIMUdGC9Tl6mFvbIbHBkb+eDUT+GxSOKt4T8IGc13x1jmWAFcMdHLloAcLgC04y27XEVdJj2JKReFuUC57fw4HLY+Xu05qSJ7aV03zCiniAePILTV0FrYUcvCqrCbdmGn+cnBlhfufQscli7UXXXMdeif/1TuOMUm0liOnw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(39860400002)(376002)(396003)(136003)(366004)(346002)(230922051799003)(1800799012)(451199024)(186009)(64100799003)(26005)(83380400001)(53546011)(6666004)(6512007)(6506007)(38100700002)(5660300002)(66946007)(4326008)(8936002)(44832011)(8676002)(41300700001)(316002)(478600001)(6486002)(2616005)(2906002)(66476007)(54906003)(66556008)(36756003)(31696002)(86362001)(31686004)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aFJBZElCcW1FbUViT3l3VlBSc0VvZGl0WmVRRDU2WDNid3MraWViWXBnb1VH?= =?utf-8?B?L0QzQnBreGE3Q3IvbkJZK2NiUnV6VVo2NExSRENaNEExTkZpcHhjZGNIdFY2?= =?utf-8?B?NGttZ1M0MXhMRTFNMGx3NHh6cUVFSzFsUlVSQkhITDMrYy9WRENEZS9VUzZx?= =?utf-8?B?YTU4WjNXcUZGZzcrditkd0p2ZDAvYlBNODIyTTJXQ3lVUUg1S1U5OFRqSEx2?= =?utf-8?B?TU9IbW4yc2MyNmNWTUpSZXRhOUZXYkw0em43N2h0ZzZOd3EydDVUbXQ0YTJS?= =?utf-8?B?ckNzNjlqL0NSN1NFODF4SVVxcXdKYWxrY0pQcXpEQjJiL2NrWmxHZUdxd1Ev?= =?utf-8?B?cGQ4OWpURmpXWFNCVFBJTUsyNXBxeDZjc2dCL0hxVE9UZEJJcThNMVczeFda?= =?utf-8?B?VitaS3haRklJempuOXVwMjVlV2tJYVZ3ZDJNUzJDWDZWS3Jkd1EzaGlTbjJt?= =?utf-8?B?M0ZaUTJuRzdZcnpFT1hYRnZqZTJ2Y0VjaTFmdVJ3YyswTER5elowWkNOdzda?= =?utf-8?B?YzlkcWExNzZRczd1dy9qc2xEMEUrdGpzQWpqL3ZlK1BlVCsybG1PVlpRNTFR?= =?utf-8?B?UnlRcUZZdmFldlZBNFRPcmJSV0VSTCtXWVV0ZERDR0U1Y215cUc4OGhGamtN?= =?utf-8?B?d1B5TEpkWFZ4M0Z6cFN1ZDRpejVCZ0xVMFc0MVd1WTM0d04va3pLdHltM3cv?= =?utf-8?B?OWJkYjUrWlFlZTJSZUlPYjk5SmFoZ1VRTFBHUlR2MHpHeGk5N21FM3IzeWRx?= =?utf-8?B?b05BZnpSL1lQVFBuMTI3RzE2REUzV0JXNmtQRnk5bURIK1lENlpST1RaZ2FU?= =?utf-8?B?cnFqYWkveGQ2eXZtSGtWRUNtTGFyMnpEZjkxaE5lWnRBTDIvUWRCcW1CdEdt?= =?utf-8?B?VDFsTjVLb3FVSlNkWHJ1THJaNENuU2VBLy95empmQnBtMnFmbThra1pYTEFo?= =?utf-8?B?YkFNUGZNSlYrRnhxMDg4Ynl3V1FqcGhPL2E2R3NQZnRLakxGcGREYjUrSms4?= =?utf-8?B?K3RxNFdkQUhwT2pzQUlWL1RVaTVzTG5abUR3ZUlaYmozcC9HaVpoZ3N2cXU5?= =?utf-8?B?aTBQQ1RuU0NVNzd5dDFNU0g4MDFuU2syQjkwcGcwdmNtRFBNcFNZVXNLQ05j?= =?utf-8?B?clMxaXBOb0NWVmZNN2pqcnpXekdTQlhNK1R6WklsVHVqZm9zVWQwUDZyaDl6?= =?utf-8?B?cmxkd3F4b3ZISHF4azg0YXlyV2FZaE1OUmpvZkRFYzlqUUhyN2JLcGtITFdz?= =?utf-8?B?eENnYXFnNTAxVTBaNExPKzRZdXpkMi9KS0xHcUFqeDBkbmV1TXljQXNXeWtR?= =?utf-8?B?RDNXNVdiZ0FURDcwd05PSFhIZjNkQ3NWVWNJWlVNckZVQ3J5M3dlcVJSbFFk?= =?utf-8?B?Sm9iSy9nVFRHVnE0bGxuY3c3ZENYYXNwN21QclFWWFVtb0ZMVmtZKzN5MUVL?= =?utf-8?B?M2xYY3dHR2pXQlptZGJHTHN4cWJqSEdlV2FxdDJYZzlEK3ZXSzJTTHRaRjFh?= =?utf-8?B?cjdHR056dVVBQTVtS2tVUWZwV1NSYXRoSFRuQUxzbEVUTDlWS3pYSmV0ajEr?= =?utf-8?B?K1VsaWZKeGgzdkhRcGRveG1RMHZHUDhnY2pnNXJUb1llRWVqRHhpM2Y4SEFo?= =?utf-8?B?OHg1Wk9rcUFoSG1tby9MbHNrbkpyYVFPKzVXdmZNb0x3NkZ4enoycFI0SDh5?= =?utf-8?B?QXY3OGtlK0dWUWFIeUxzellIWEtmbmxnQUZNOGd0VEw3OHBjR0d6NWlWbVps?= =?utf-8?B?aWgwWlVCbUNyVWZxUERaclFwTXFiZXBIdlhhTlFzK3RjNmY4SjhFRno0blZs?= =?utf-8?B?bmFkcmFzSVhNYWFXM2ZGc01XNEZkOGN1UjhkOE5Qc2UzN29DcEgrSEREOUlL?= =?utf-8?B?VkVsT0FXQUVseUhOcXZCNXk3T3JhcCtxNFEwUTJmanNRRG44ejVPdHhBS2JD?= =?utf-8?B?OEJ2NjNjdldMZnBiaFhSUlpNSjE5QjN2WlEvcGNOcjM2QXRKWElxSDVrUjRu?= =?utf-8?B?S2dYcWIrbHFiNk5seVh1KzJTT1ZEeURRSHhnWW8zbzA5NkpvdDRxYXgvZjV1?= =?utf-8?B?Unh3Mkp3bGI2TWdFaCtwUzBza0d6K2p5M0tDdGRsNDhPRGpBZ3dNcFo1Mzc0?= =?utf-8?Q?XJiM=3D?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: f93a196b-94ea-4456-6289-08dc20d604e5 X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jan 2024 14:24:35.9492 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yYSWdXfCs9+65i7yT5GCwJVrgxxsS74Udq31cbtKx9gjsrqFwucs87av8y1pEGho X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7986 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 12/17/2023 9:32 AM, Gregory Etelson wrote: > Template table creation API sets table flows capacity. > If application needs more flows then the table was designed for, > the following procedures must be completed: > 1. Create a new template table with larger flows capacity. > 2. Re-create existing flows in the new table and delete flows from > the original table. > 3. Destroy original table. > > Application cannot always execute that procedure: > * Port may not have sufficient resources to allocate a new table > while maintaining original table. > * Application may not have existing flows "recipes" to re-create > flows in a new table. > > The patch defines a new API that allows application to resize > existing template table: > > * Resizable template table must be created with the > RTE_FLOW_TABLE_SPECIALIZE_RESIZABLE_TABLE bit set. > > * Application resizes existing table with the > `rte_flow_template_table_resize()` function call. > The table resize procedure updates the table maximal flow number > only. Other table attributes are not affected by the table resize. > ** The table resize procedure must not interrupt > existing table flows operations in hardware. > ** The table resize procedure must not alter flow handlers held by > application. > > * After `rte_flow_template_table_resize()` returned, application must > update all existing table flow rules by calling > `rte_flow_async_update_resized()`. > The table resize procedure does not change application flow handler. > However, flow object can reference internal PMD resources that are > obsolete after table resize. > `rte_flow_async_update_resized()` moves internal flow references > to the updated table resources. > The flow update must not interrupt hardware flow operations. > > * When all table flow were updated, application must call > `rte_flow_template_table_resize_complete()`. > The function releases PMD resources related to the original > table. > Application can start new table resize after > `rte_flow_template_table_resize_complete()` returned. > Hi Gregory, Ori, Why we need three separate APIs, rte_flow_template_table_resize rte_flow_async_update_resized rte_flow_template_table_resize_complete Why not 'rte_flow_template_table_resize()' update existing flows and release resources related to the original tables automatically?