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 388C441C50; Fri, 10 Feb 2023 18:42:13 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 55F6A410EA; Fri, 10 Feb 2023 18:42:12 +0100 (CET) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2068.outbound.protection.outlook.com [40.107.93.68]) by mails.dpdk.org (Postfix) with ESMTP id 778C4410D3 for ; Fri, 10 Feb 2023 18:42:10 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PaNsDCzy1iQsLhR+GUSFqlF/mTNiH2iBXVyQ/EEIFIHkIam8UBZB0frGkrIoxVNMgGEdJenZobHn4bu5DtWqFz/nRewhlzzy7F0IXGxU1MDPmblxdQeLMVAGLz0sopAoOYL3a9HsRh9WYrejTpVFqB6Z9UeKkOy1juhQC7XSxa9r758difP83oOu97KtHv9i5NseteElUIZHAVwQqmiMYWs0WMsJcqMYhSCMisKWH9YbOlr5ZWzRJRnZ1zLHwuhV3tUS5kUm0zlyZyZ8CdEgcA18OBkqb1X62F4+J0PpmzJ2Q6qusCOM+Olz6wWTNSLFLfjXsq7MRitoOBAdKxIv2A== 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=NgXt9ZQjaumGUubK0t/mEo+mOv/GkLVM7/EwvTEWH2I=; b=WarxZN6vhiaZfQSbOx5QUvoNWHsOs4JTyOKv5hP5pVgrsRLLCrqYrXmQSomPVyWbsnaQJAM4WkSAJD2lvwG26A9eKlSMM2obRFmc8QGww2ju7Pze9a+rbbtWQPBfMCH7Ny1SQ6SGP22xu/48nTa6DVjZYgEIm2goXVoWbTTVXNCDXGnyM/fiU6u45s6A85qihDp/PR7EJopj9qlQ3QyR9QH6kFoDrkbT6MiuloV6Znz7tNRm9EWZ996vusPTMGNrZgZVjq3QjtMUftUguU4jIbjKD+TRW0WPGxmv/oFI/K99w6TFab2mRSQa4xCEUVegGWnOfSS/L7TFwk7IICZn2Q== 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=NgXt9ZQjaumGUubK0t/mEo+mOv/GkLVM7/EwvTEWH2I=; b=fCi9qtrfvJliyrmqJ5O+VpqlrXBxVu1iBh9JUd0yHnQ6PgBm/M45XMq7eiFTM/fBhzXNSEdS7+4p5earssvk2iEWc71wzFlmyy1ro88NAXUXvpmukdzO96rcJJM4xLQATGq+VgUHVH1vtTo2P0hcdTvs8coORSJm5K21tWv139M= 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 PH7PR12MB8156.namprd12.prod.outlook.com (2603:10b6:510:2b5::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.17; Fri, 10 Feb 2023 17:42:08 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::3614:22ed:ed5:5b48]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::3614:22ed:ed5:5b48%8]) with mapi id 15.20.6086.021; Fri, 10 Feb 2023 17:42:08 +0000 Message-ID: Date: Fri, 10 Feb 2023 17:42:02 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Subject: Re: [PATCH v4 0/4] ethdev: add template table insertion and matching types Content-Language: en-US To: Alexander Kozyrev , dev@dpdk.org Cc: thomas@monjalon.net, andrew.rybchenko@oktetlabs.ru, orika@nvidia.com References: <20230208024755.72743-1-akozyrev@nvidia.com> <20230208030624.78465-1-akozyrev@nvidia.com> From: Ferruh Yigit In-Reply-To: <20230208030624.78465-1-akozyrev@nvidia.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO2P265CA0379.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a3::31) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|PH7PR12MB8156:EE_ X-MS-Office365-Filtering-Correlation-Id: 8d88db34-7653-4552-8afa-08db0b8e2195 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WiRSNS988/SMqvPaPlBQJUK2QQ/ilYxdrpHFqYykuZpJlif2elYPdfzVpdF1Cj1EOTRBlnBG+6sL/P4d6oMpeU+QqCjyojlSkjMSQm7i45TvOAH2XWcHYbMxBox+9tEsJwNb8+l8RY6S4V5pMnH524iezDJLT7i1Zpi/fvkheqoheoO+IoPULrQCFQkK8pFkaXyb7Da3m11y4hYNz+kStlNQK7NANmGb0T2dyZA8MMm+dxZeGkEXfVsL+Fjcq/dq/qtw+l9gyopsYmVixK2UX6d4xdgGKvm3SNB9AQVxKnzNkRTUXCoCd//pnoOGTTkBy93s7hjFCoz7PWqBgcytoZxLJkTEjums7bGrnR7RUqrQikzfwb+2HxWqQJLbLA1V+z5pxj76uaUwz8zDFOGU0xgCrh50/zpq2BczqCd4AFImJt9KkqZNBNshgkc+2TuP5ruZhqf9tWSGK3xesnVwKX9hmnLhZT2B6deeMWeMpohZn1FzE5D5klP2he/WlKOblc4+AfkN6mzoSKJe8VRSii9viNb+Iau46lYLeLCHImfOOxgY/orf61u6d+qywCpVliLybUySMZLezuO8Kkx09H5A431Aeit4Cp7cCGc6uHNK2VV95lTQ4BL11TgfbRvfYHo95YtDjmUCbsRmoIy7ey3WciGX3lC0Op0MRYx+ELW1D87R22p9RcDqnhGqx6ibzKUZHQXDK4moNDPLfcmNYQbQoNVbEHqKsfXvr5xv56GpHB7zNSF0JcA0DVYgpKBmrO2lC3N4XmKgxBJFh7WFyw== 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:(13230025)(4636009)(366004)(39860400002)(376002)(136003)(396003)(346002)(451199018)(44832011)(6512007)(186003)(6506007)(2906002)(26005)(6666004)(36756003)(478600001)(966005)(31686004)(6486002)(53546011)(8936002)(41300700001)(2616005)(5660300002)(8676002)(66946007)(4326008)(66476007)(83380400001)(66556008)(86362001)(31696002)(316002)(38100700002)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VVpXajRIcnBpcHNQWVpuV294VWRjMXM0a3VvdFArN2hNUjBXVUpHdm9JYVhn?= =?utf-8?B?ZVUrSUVKRWY0SnA1UGtSbGdHdXhHQlp1RFJhNEN6OGlDdFpqSXJGOFNkUzlV?= =?utf-8?B?c1ZZbGdMMlVJTjR2UXlBZk9LOEUydURDVmdwcnVsUUQwN2lWbXF2VUM0NW1l?= =?utf-8?B?dk1SblRVMG1jOXp0TGlJQ3IxYjh1ZXJTRm5vZ0QwR3hPTVM5eWFNRm5KTWh5?= =?utf-8?B?dTNNRWxLNlpKSmZTTEpsdTlVS0dQTVp1d3A4SCtpOXFuYlBXcjdRY3Y3bEdG?= =?utf-8?B?TGwzMUJpc1J0MDZOSXluUmc1NFVjQmtjZW9jTW5kbVJwN3lJN1FwdHFWS080?= =?utf-8?B?M2NQbEQ5cGJ6U1E3anRtY283RjZ6Z0o3UVdGUHE1SVlQVVM2a2J5QWc1bng1?= =?utf-8?B?S0hFNlE3bC9lSUdTbCtFbHhSL0ZDUHBMank3MjY1bVRDakpiTW5ubWltUTVY?= =?utf-8?B?TzJDWWUvV3lRc2tiajVNMHJ6SjFrbDhzWTRzaUl4T2p2ZGtHdGl0TVBqbW8y?= =?utf-8?B?bXhIWG8vU2pEN2w4MUVpWUYxN0U0ZVVrSXArbXowZGNMZmdWTlZrOE1HdnQ2?= =?utf-8?B?ekQzMVJ2M0tYditVT3R3OXNjU2VjUXYxaWQ4QnNGZXdwSG9YRzA3eGpPTEdN?= =?utf-8?B?d1dYbW96Q1BNRnZMRjR2a3I5N3NXVHQrcHp5aklocEdOVS9OQXdxT2tDRllH?= =?utf-8?B?RWs2dnhzbzl2Z01mdi94VzdFc09ORUphekJmc09DVm1VdTMzTnJ4SHJYbDVa?= =?utf-8?B?Y3VwVHlWeC9odlNpYTZGNlNKMWlkclBlNjlqWkMwUkV4Zlo3bHFaYWJSNnJE?= =?utf-8?B?Unh3STE3Z29FblUxNnZjNXluVTJoTEF4bDRkbUtJaFpqUWc0dkNQTTZ5WWhU?= =?utf-8?B?YnM4dVExNGJ0TlhYMC9rZXFCWWZYSWRCOVc0MnVGVkxCZDJXQkR2TU5iR2dt?= =?utf-8?B?NXNncENiT2pDdGx6VVZrOURjZWg1SjRuSnJSS1hhMGloWHJJUEtPRmlsdVJy?= =?utf-8?B?amFUSGNlNjR5dzBKWnJXSWxjUE94aUpuWTNyOVJNRTk2N2k3djk5U09TMm0v?= =?utf-8?B?WWdkVk5KTU1IWGE1NEFKTGk4SVlHSHhJVml5WVBYOUxic2hwTk4vQ2FsOTdJ?= =?utf-8?B?WTIrQWpnNzdJOHhXeEJCREtCeTR5NzNkTTlvQkpMMUdqZ0hDSzA5MXZ1MndO?= =?utf-8?B?cUREeThoOHdHSXIzaFpqbXorcTN4blVOZVdzSHU5alBPTEM4TlQ3N25qRFlJ?= =?utf-8?B?MDFES3k3cjRyVUVLSkpJdkV1dG1nYTFyd1ZWWnJYcFVKOEFHa3UwblNFWUtB?= =?utf-8?B?aW5pS090RDdKRVpLUEdORjh1STI3ekdyVjUvMlluRDRBaG4vUmY2ZTllOElY?= =?utf-8?B?VmpWdzVkVUVQM3BHVXFGMU0xcndmVHZPSnBTaWJ4aVNJRlRaN09zVVVubk54?= =?utf-8?B?SUpiTlJQQXd3WVR1bklOUEo2OW5wY0txUmdta2cxTURUQitLTmw5YmhDbEI4?= =?utf-8?B?MENxQktZNVJMZTR0SHZ6RE9udlAyMStmQUlQekRyY0Z4dzd2MnBmQ2lRVnkx?= =?utf-8?B?L1hLSmplbW9LMnJjWEdjZTVYdnFVbVBJRGQwVVdqWEVwcVFLQzZrUFYxQTBY?= =?utf-8?B?czFRYUJxMEdxNVNzY1ZiNFBqS1Z3dGlTK0dNTjRYVTBHblV4YXNnZGY1Vi9q?= =?utf-8?B?YVRBYkExOThjODV2c3hrYk1FZGc4Rzk0cHpGN0wxVGI4MDRBbTFNV1lrZHNk?= =?utf-8?B?eWVma0Y0RDEyZmpOT3hnQ0RuYWY3TFFDdXhJT2w0T0sxcUNpRXkxMEZTNzU2?= =?utf-8?B?RDZvR2NLVlhWUnRBUTE2MUpBbFV3ZlRtRlg3K3FpaTFVOG52dndnVEFUekhT?= =?utf-8?B?U2R5K3ZiQzNabmh2VWlCNXVZeHN3ZVVGQk9FQmg4UE1wVFJ6djlyK1RSMGRH?= =?utf-8?B?Z3hvcldzMHZVeHJHWmtQcnJ6UlVMNkw2NGl6L0tMdGFGWGQySzlVL25XRWZZ?= =?utf-8?B?VWFNcDdtaUFFSjFrSTBCUjNMSSs4c2JUMzgrSFZPTGRJRVhEN0h1U2JqKzFs?= =?utf-8?B?Nm9SY0MxRU1nQmR4dHdyNjliZ3pEWHlQUjBhRDZSa0E0bXA4aGU5U2dqUlpR?= =?utf-8?Q?fu8TK2Y6W+k8G3hrTUdVMp/MS?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d88db34-7653-4552-8afa-08db0b8e2195 X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2023 17:42:08.2244 (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: o+kmVMjCXrjCwhTPXucD9Y+XX+892OJWNpnZE3aXOK2vumEL1WncaG6bm8EA9bUg X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8156 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 2/8/2023 3:06 AM, Alexander Kozyrev wrote: > Bring more flexibility and control over both flow rule insertion > and packet matching mechanisms. Introduce 2 new flow table types: > > 1. Allow a user to specify the insertion type used in template tables. > The insertion type is responsible for choosing the appropriate key > value used to map inserted flow rules into a template table. > > Flow rules can be inserted by calculating the hash value for > the pattern or inserted by index via the new create_by_index() API. > The idea of the index-based insertion is to avoid additional matches > and simply execute predefined actions after jumping to the index. > > The insertion into an already occupied index results in an error. > The old rule must be destroyed first. An index cannot be bigger than > the size of the table, otherwise, the rule is rejected as well. > > 2. Allow a user to specify the hash calculation function used in template > tables. The hash calculation type is responsible for the calculation of > the flow rule index a packet would hit upon arrival at the table. > > Control over this is useful for applications with custom RSS algorithms, > for example. An application can select various packet fields to serve as > a hash calculation source and jump to the appropriate flow rule location. > The RSS hash result will be used as the index in the table. For the linear > hash function, the mapping is one-to-one and the hash result is the index. > For other hash functions, the index is the hash result module table size. > The RSS hash result can be retrieved via modify_field API: HASH_RESULT. > > RFC: https://patchwork.dpdk.org/project/dpdk/patch/20221214022110.393410-1-akozyrev@nvidia.com/ > v2: changed the behavior in case of insertion into the same index. > v3: refined the commit message to highlight index-based table advantage. > v4: fixed a typo in the commit message. > > > Alexander Kozyrev (4): > ethdev: add template table insertion type > ethdev: add template table hash calculation function > app/testpmd: add template table insertion type > app/testpmd: add template table hash calculation function > > Series-acked-by: Ori Kam > Series applied to dpdk-next-net/main, thanks.