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 9F50B4567F; Mon, 22 Jul 2024 13:18:17 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2C5CD400D7; Mon, 22 Jul 2024 13:18:17 +0200 (CEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2077.outbound.protection.outlook.com [40.107.243.77]) by mails.dpdk.org (Postfix) with ESMTP id 443C840041 for ; Mon, 22 Jul 2024 13:18:15 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dS3Cca20CYgNlf5gl4EQpQ0a5p/nLKiZT5gNJKQCuygWG6FzWLsj2+VukVRLhf0vIjLSEAR1NGZyJRvAWeg6AdzGrY6NdDZ+VWJ1dx98xI5mRdyPWwGB80qVOfhicoWulLt1XcuevUxCgZQf9YzlQEaSEkITGgM/z2gEu0C65Iib/lTe7uToLB6rzkOSp5YfuJejx4LLulfGWVTvTw7dEWYVZn9/VmbztxKERCfBEBY5clBiHsLCGSLloH33ykvMhuQxlRmSJ2E8VROK73ywi6JfRxAdwc2D3hKx7vpOR9ihhGyAvfarDmkTnNDVOk4mJPf7T30g2tlzwCb7FbIGTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=zzlVD6pHwf7bgOh2zzRy8HeVwW0Cet0RE+zRm2V8+hI=; b=l2U2bJ4bnRO/93R/79D5kvzwJXvlyIGBnpu/zt7WXEBk2FUUqRXv2Lb8435DDl9wFZR11QHcleWB4ZduCk35dWN1j4bEwO8Gbbmk3px7r9gRCgu4TE9xzsLgc4LNxFbjErTMvcBnqZm7h0hi5rgagugRrE1/cARV040WiEz50TL9NeWVm5+LnI5V5mexUE1Vc1CyW8bmlwKgA/T0JMNxrWueSADnmRoix/Ky3czQ44CEaZpa62iE22cf74bfZRqJfTQtevJeehjhNu7LUI2J4/jJ+SJ4M8AarcHydnnaB7SV/D/0CPojesZJfI4iJG2cwpZyBsAOMHjP43UqnACfGg== 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=zzlVD6pHwf7bgOh2zzRy8HeVwW0Cet0RE+zRm2V8+hI=; b=kI+UIxfne7YEVcssRk8NUinx2OZ3d6Wp/EWXW1ks/NiDdHNl1idWR6KB3N6P7Kt1WLjNxpE1mlOUGVBVjHq0uao5t7f+RZA0gSI2CAFJcQv5s/7Z+svCgZRYTrl7fjXEmW8zYxJgHB1KSerP1eD8r0FFsldHotCb3WM7QLFgVsc= 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 DM6PR12MB4434.namprd12.prod.outlook.com (2603:10b6:5:2ad::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.18; Mon, 22 Jul 2024 11:18:11 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::ebfb:2f9f:f9ca:82cd]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::ebfb:2f9f:f9ca:82cd%4]) with mapi id 15.20.7784.017; Mon, 22 Jul 2024 11:18:11 +0000 Message-ID: Date: Mon, 22 Jul 2024 12:18:05 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [RFC v2] ethdev: an API for cache stashing hints To: Wathsala Vithanage , dev@dpdk.org, Thomas Monjalon , Andrew Rybchenko Cc: nd@arm.com, Dhruv Tripathi References: <20240715221141.16153-1-wathsala.vithanage@arm.com> Content-Language: en-US From: Ferruh Yigit Autocrypt: addr=ferruh.yigit@amd.com; keydata= xsFNBGJDD3EBEAC/M7Tk/DfQSmP1K96vyzdhfSBzlCaGtcxNXorq4fALruqVsD3oi0yfyEz9 4YN8x7py0o9EL8ZdpOX0skc0AMCDAaw033uWhCn0GLMeGRKUbfOAPvL6ecSDvGD7CJIO9j0J eZUvasBgPdM/435PEr9DmC6Ggzdzt8IuG4PoLi5jpFSfcqxZFCCxLUDEo/w0nuguk2FTuYJg B2zEZ4JTBZrw7hIHiFh8D8hr6YA6a5uTofq1tr+l048lbtdFUl8TR0aIExVzE4Z8qKZlcE+9 RQaewjK5Al1jLE4sHdmd3GN+IvgDF3D/fLsi25SKJDeGSdeHkOmaX0qGeM4WKIfU6iARRCiQ N3AmBIxZ/A7UXBKLaOyZ+/i3sE6Wb53nrO4i8+0K2Qwyh6LjTeiJAIjYKN43ppxz3DaI+QwQ vI+uyHr4Gg0Da9EPPz/YyKauSeOZCfCB5gIfICO0j6x0SCl8uQ2nLpjxcZkf0gjcwUzP3h+S 3x6NfDji9YEij0zczW/dcSpGgZ6vsFpPrtnP9ZXy6J53yp0kJtOJoOlkEFFdU2yCZnCDseum CoudmGLZVvS0/DzHDJejq+3kK3FDGktZBOxZIIpal+nFqS7lVgOZc4+huVv3jyhzoAUOEyXA XK5j6o7g8STUY+z33QNnHpdLvecMwuzmvqy0jR54yAbZ64mB9QARAQABzSNGZXJydWggWWln aXQgPGZlcnJ1aC55aWdpdEBhbWQuY29tPsLBlwQTAQgAQQIbAwULCQgHAgYVCgkICwIEFgID AQIeAQIXgAIZARYhBEm7aYjps5XGsPHCElRTPtCKKm/6BQJkdyEEBQkE3meNAAoJEFRTPtCK Km/6UdcP/0/kEp49aIUhkRnQfmKmNVpcBEs4NqceNCWTQlaXdEwL1lxf1L49dsF5Jz1yvWi3 tMtq0Mk1o68mQ7q8iZAzIeLxGQAlievMNE0BzLWPFmuX+ac98ITBqKdnUAn6ig5ezR+jxrAU 58utUszDl16eMabtCu76sINL5izB8zCWcDEUB4UqM8iBSQZ7/a7TSBVS0jVBldAORg1qfFIs cGMPQn/skhy3QqbK3u3Rhc44zRxvzrQJmhY6T1rpeniHSyGOeIYqjpbpnMU5n1VWzQ4NXvAD VDkZ4NDw6CpvF4S2h2Ds7w7GKvT6RRTddrl672IaLcaWRiqBNCPm+eKh4q5/XkOXTgUqYBVg Ors8uS9EbQC/SAcp9VHF9fB+3nadxZm4CLPe5ZDJnSmgu/ea7xjWQYR8ouo2THxqNZtkercc GOxGFxIaLcJIR/XChh9d0LKgc1FfVARTMW8UrPgINVEmVSFmAVSgVfsWIV+NSpG9/e90E4SV gMLPABn1YpJ8ca/IwqovctqDDXfxZOvCPOVWTzQe/ut767W+ctGR1kRkxWcz470SycOcY+PW VRPJd91Af0GdLFkwzZgNzkd6Gyc9XXcv4lwwqBLhWrBhqPYB0aZXIG1E/cVTiRp4dWpFHAFD DcuLldjIw93lCDsIeEDM9rBizGVMWEoeFmqSe7pzGTPXzsFNBGJDD3EBEAC8fBFQHej8qgIG CBzoIEd1cZgPIARlIhRudODXoNDbwA+zJMKtOVwol3Hh1qJ2/yZP11nZsqrP4fyUvMxrwhDe WBWFVDbWHLnqXMnKuUU1vQMujbzgq/4Rb9wSMW5vBL6YxhZng+h71JgS/9nVtzyaTtsOTrJi 6nzFSDx6Wbza2jYvL9rlK0yxJcMEiKwZQ/if4KcOesD0rtxomU/iSEv6DATcJbGXP6T93nPl 90XksijRKAmOwvdu3A8IIlxiSSVRP0lxiHOeR35y6PjHY2usfEDZZOVOfDfhlCVAIBZUZALv VmFOVSTYXeKgYa6Ooaf72+cHM3SgJIbYnevJfFv8YQW0MEAJ/IXE7B1Lk+pHNxwU3VBCrKnA fd/PTvviesuYRkrRD6qqZnINeu3b2DouVGGt2fVcGA38BujCd3p8i7azoGc7A6cgF7z9ETnr ANrbg1/dJyDmkDxOxVrVquTBbxJbDy2HaIe9wyJTEK2Sznpy62DaHVY+gfDQzexBXM10geHC IIUhEnOUYVaq65X3ZDjyAQnNDBQ4uMqSHZk8DpJ22X+T+IMzWzWl+VyU4UZXjkLKPvlqPjJk 1RbKScek5L2GhxHQbPaD76Hx4Jiel0vm2G+4wei8Ay1+0YRFkhySxogU/uQVXHTv63KzQMak oIfnN/V2R0ucarsvMBW+gwARAQABwsF8BBgBCAAmAhsMFiEESbtpiOmzlcaw8cISVFM+0Ioq b/oFAmR3IPsFCQTeZ44ACgkQVFM+0Ioqb/qINhAAtcor9bevHy22HvJvXX17IOpPSklZJAeQ Az43ZEo5kRlJ8mElc2g3RzYCvL/V3fSiIATxIsLq/MDtYhO8AAvklxND/u2zeBd7BkRZTZZX W1V1cM3oTvfx3LOhDu4f2ExQzCGdkzbXTRswSJIe1W0qwsDp+YPekbrsKp1maZArGeu+6FuW honeosIrWS98QJmscEhP8ooyJkLDCCOgEk+mJ/JBjzcJGuYn6+Iy/ApMw/vqiLGL1UWekcTA g18mREHqIR+A3ZvypIufSFB52oIs1zD/uh/MgmL62bY/Cw6M2SxiVxLRsav9TNkF6ZaNQCgn GqifliCEMvEuLZRBOZSYH2A/PfwjYW0Ss0Gyfywmb2IA990gcQsXxuCLG7pAbWaeYazoYYEQ NYmWatZNMAs68ERI2zvrVxdJ/fBWAllIEd0uQ4P05GtAHPdTIDQYp545+TPV7oyF0LfXcsQs SFVZE6igdvkjfYmh+QOrHGZvpWXLTmffVf/AQ81wspzbfxJ7sYM4P8Mg5kKOsaoUdyA/2qVe cMh1CLUHXF1GlofpGbe1lj4KUJVse5g3qwV7i9VrseA8c4VIZewdIjkzAhmmbxl+8rM/LKBH dZUMTzME5PFCXJIZ83qkZQ795MTe2YScp9dIV7fsS5tpDwIs7BZNVM1l3NAdK+DLHqNxKuyO 8Zk= In-Reply-To: <20240715221141.16153-1-wathsala.vithanage@arm.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR2P281CA0090.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::8) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|DM6PR12MB4434:EE_ X-MS-Office365-Filtering-Correlation-Id: d35e10e3-7aaf-4829-e1b3-08dcaa3ff8d2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?c28zVW9LbUlTYUdmTjM5dTB3TGRHZ0d6Z21yenc4REF4ZnRiSXp2bmdWa1c1?= =?utf-8?B?Ulk3aU1UV1laRDF6MkloQmNHcEFKNmpCcjFObmZUdm9FOVNXcFc5N3NmYmxw?= =?utf-8?B?Z2N4bzV4WHVERGhWMFlEMmQwM0VzZ1pTSmFVZ1RzZm9kQ2M1aThqckZ1UXRI?= =?utf-8?B?bTNBNVNQSWlPbFBkZGNWSzkzT3g4NkYrdEtRalQ3OXd5OXRHL3ZNUFNYZDBK?= =?utf-8?B?Nm9xcmlneUlVZjJVUkl3Mm0zNXJUUlkvZ2Y0QzVFelhBRXFQVytXOFJDQU5C?= =?utf-8?B?YTdrZ3BBVDZkSW9oU3c1cnozNEpJWGw2TE4zYXlldmNiWkZXVHZxTVNlb1lJ?= =?utf-8?B?czlnU2NkaTVxWDRZVFl0dWNua2llT2ZZR3RURWZhSUVqT09jaTQyTE5WVzhj?= =?utf-8?B?RGFoK0QxaUI4YnkvMnBzcGtaL2NmTzRtZlh3dVAvRVJwUGl4S2R4WElvdFpy?= =?utf-8?B?UFRESlV4emFxT2lwSWQ4NUxMUXZueXJRWFR6aUc4UFRablhCT1JKV1VMQ0Zw?= =?utf-8?B?R3pXQXpETFhGTzBZR2xKMjdKdDFDeWMyOFUxNEZBRXBacFhpM2dzdFZnbCto?= =?utf-8?B?dFRlTEtVWkE0eURVWEprR0U3SkNjaWZxSWZJd0M2U2xIM0R2SGI2dFl1cHdv?= =?utf-8?B?SlpCM3dzb3g4aXdKVmVwcXVDQmNkb3Q5NTRFN1FXRDI2VUE1dVkzREVLTHpR?= =?utf-8?B?M0FtczRxNUJmMzhTK2J5aFJQWHVWSHVlZWpwSW12M0xHRE1qSjZ0WHVhWUND?= =?utf-8?B?bWR3NTlJQ0pzNkUzOW4wSGJpNSthWVp3Q21ZaGVQcGE4dUY3U1ZYQU5WckNC?= =?utf-8?B?Vm11Y2llQXIrQkt2RmRLeTUyNEJldm52N0dkMTJrcFFHRGNhR25HY3EvTklK?= =?utf-8?B?ZmxoT1pPRFJWbldjc1pHK3pQQWZpcXVRUW54V3IwOWkwSnBmS0pTU3pGRW5q?= =?utf-8?B?OE42V1owR2hqcUY5L3YxdDFtL2x3Tm9xcmNpLzNxTWJHN0tIc1oydFlEOGph?= =?utf-8?B?bllJY2x5U1ViZmorWWF2cTJuNFN3WVZqL0ZudlJwN21HTEh5Z0lrdnNVbTlZ?= =?utf-8?B?ZUw3SFhFQjlYUnlnM0hSQjcyd20yT3ZlYlZSaEhYT3lYSTFGVE5ReFJtemhi?= =?utf-8?B?V2h0S0VZQXl1c3BuOXVES1J1YmRtUVMrMldiY2p5eW5TbkNrSG9ITTdrTnEx?= =?utf-8?B?ZW5yU1dXeDdBb0FoUWdqUGt3R2FUd0x3ODlsZko3d3RkVytRQ0hkTUg4NXZ5?= =?utf-8?B?THZSR0pSZERTdjYzMEtnU0FOdjdaQkxTZlVqY0tTSFc2TUJVMVhOWjMwN0pu?= =?utf-8?B?ZG5EeEJuMVpIeUpqcnoyNTZabE9vSUtscHZBaDVsRHNKeS9ENDR5VjhNcFVl?= =?utf-8?B?eEtFUVpWc2d4U21SclhOWFZIQnd2a0VvT0VGYlhyUzFUNGYzQnZ1aWg5Sy9a?= =?utf-8?B?TzZZWXpyOUdJdnltUzVSRElOS3d5WW1HTzJYYVZoVkQ1dHZzeUJxcUpHU2hG?= =?utf-8?B?RUdnc1VoRnJDbm9HOUJPdys1bXN2dGxyd0wyZDJzMWhMWjdtM2czb1kyc1NZ?= =?utf-8?B?STQ1cWJObUdYMTd5eXVPdy9EZXFqVm9QN3NpQmc3NGJZS0x3WEVoY2F1YzAw?= =?utf-8?B?elZVejJVK2xvMURIQ1FsZXFOdnFCQUdSNzJtQi9VdlBHTkdsMHZnQzN6MnR0?= =?utf-8?B?YUM3YkRmbFZYdFJ3b2NETWpzV0ZualZGNnljZjJ4V0ZJUktVS2ozYTlwNk5M?= =?utf-8?Q?Gi1vKHMDf0Vv+893ss=3D?= 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:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dWxqWmxIdXdYVkVaeVkyNEpQT3BTN3FCb3hRYjNuV1U5RUtyRGR2LzBiOUlI?= =?utf-8?B?WnUyR092RWcwRlRIa3RET2VNY2IyRGNHQml4N2NKeStlWExaOWlLdkhnZEQv?= =?utf-8?B?MmovWncxVnJoZStJVSsxV0M0RWhsMTlRZ21ObkRWVU5QVzJURjdpQ0twSHBz?= =?utf-8?B?c2RsUFBwNUFlSHJCYlJxK0M3b3JuNnB1Y0hkRkp0L0tYOUdNSzAyT2pnWFZu?= =?utf-8?B?QWVlVVZFVlRuU0ZGMFVaR1hjR3NpaGR0aHBWWXZPcktYb2F0dHBJMDJROEtC?= =?utf-8?B?eHRndWYvcSs1ektCUEdpWGFlUUw0Zm1naG9STHl5OFNNZkJqeHR5aEZaWHhH?= =?utf-8?B?R1N3OGc5VmFaSE43OFpNYWV5cXNXbElHblhvL21IeGdKYmFMcDZOWloxY3pt?= =?utf-8?B?WmtwaHExYkVVcWhYZkozYkFxWklxWWUwZXJsaW9ydGZ4OUFraVd5N01EZGY4?= =?utf-8?B?VHFPUTR6N043UlZYZktWdEFhUXNwQUNqQVI3VmtvWGVRM0FzRnE1d1lYRVBv?= =?utf-8?B?b3NUd1c5cE1Zb2ZYdUI0cEdYNk4yZ2F4U2UwN0pzbTBDNTY3Rnh0L3dUQUFE?= =?utf-8?B?OUs1SkcyVDRVdURvb1dCZy92M0FEQW9hU3QrcnN6ckR4OFV5RnB6NlFvVFh4?= =?utf-8?B?SHVkb0dHUDJJQVN2UXdYZGRGUVY1Q2NZR1h2cnF0YzVTemxwUFpQOGlwKzA5?= =?utf-8?B?S0lGYXErb3NsMmRUNm1KVGlXcXRoanRvUmwrSjdxMDkzZ1c3ZmhLOUVpUjN5?= =?utf-8?B?ZWphRHlzalI1aDgyMG9ZZngrZzJPUU5wTVNHTmNoY3YyRTZBdVllVG9zQWpR?= =?utf-8?B?Y1IxdHlRaTZoL3RERlpLeSt2VEN2c3lUTU5MRXNqRzRHaUFCTS9LMVArZ3ZU?= =?utf-8?B?ZXlVZVpHeTFaNTdaYTdmTXdEc2p4cHpBK2ExNWJYQS9RaWhiWFlrUC9BT25q?= =?utf-8?B?ZUdsVzF2TkUxR0ZrR2wwNzJDMUpXVFlpWFpiejgyYkpYMjFrWm5OcE92aWRV?= =?utf-8?B?ZWlPMnd0NXc4T3p2NkxiRXhtUngrRmt0dE9hNkhjZFJLc2FEdXRhMzRBWjhy?= =?utf-8?B?eUhPWkh6cHpTc1VKenlYVGJKZlRuUUZmU3RoUWYyT3JEZ3ZNZ3BWalBLS1Vo?= =?utf-8?B?VTZHODZRVkNYTTM3dFVLeXoyRFBISVpqY1R2TStkQ3RSdzJkSnNVNTlOT2VU?= =?utf-8?B?R2NraWpTNlQ5SDNFN1crZTl3SW9jVUlOYUFaRGdReXBMZ2pRMjV3cFhjTkhN?= =?utf-8?B?TWd2YmtpNlVUWDJuSDJtTGFXbWltWmNQME00RWhrV2F2dWtZUnZBTkdZNTFw?= =?utf-8?B?UUN1dzArWUprbW9UUno2Z2pKb2hod3V2L0c5MkhEZHZJM3pKTGpQK01vOTg2?= =?utf-8?B?aDJtQ0VtUnRLdjIyb2pqeE5STWVXckZhZzlRQ2toamI4T3lGT0JjNDNjTFpx?= =?utf-8?B?akdWdFAwSTBlVmZhSzYvbGtEeUlka2N3R3czL3FoMTB2NHJkTGNXNmRaZE01?= =?utf-8?B?bXVyeWduTTF3b2ljVlNvVURGTEVRQVdURGJSUTJmNEoybERNSEljSys3Zkwr?= =?utf-8?B?VnREUmd3WjdBNFgvN29ocUZud01VTGxOK2w5NVI2NGYycGZaeWttQkY1WDVI?= =?utf-8?B?RHdJR29vVHJKYk11VUxwZDVoL1dGNFhtVXY1UVgxWngzZnZWMDBiTW11WWZs?= =?utf-8?B?dkJHeDBldE00NUhmQnhvQWdZZEJjZmlUVVR6Z0xtcndncWFmNDEydU11TEZK?= =?utf-8?B?Yll6YlNDc21XQzNwSkx4eG1JNWZjRE56VjFTOGN1NW9vRmY0OWIyS2Rjc2RW?= =?utf-8?B?bFpjK1BMemtmaXV3Um4zRUpUanFhY212cUtCT25jbGFvUytiZ2w5UGEyR1A2?= =?utf-8?B?QXdPdG9Tc04vRHFOZnpxYm1WRStXVmQzeUpzQXAwa1FXWjB1UmpQWHZDYzlX?= =?utf-8?B?TWx5V0lXMmFMZURmOWRtYk42T01mMXlLN2dudzR6K2FkcTZ2akVxSXJFVExO?= =?utf-8?B?dTJNajdWVXArUnNVWDNuTFZZV1lVNnVYQlI0cHJuYTBVMG9WL1ZMWCtVajJL?= =?utf-8?B?dDVpL2QrczJVQWdjMklBUllLSUFqcDRIaklkOW5PL0RrRVhaQW4rMlVZSlpv?= =?utf-8?Q?Qvi8=3D?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: d35e10e3-7aaf-4829-e1b3-08dcaa3ff8d2 X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jul 2024 11:18:11.6291 (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: JEZjL2WA9t/zHnegi2bC3LIppLkAIw1OM2W9eKHQhq/Aqz0ypnk2fXEGFDFO2iUu X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4434 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 7/15/2024 11:11 PM, Wathsala Vithanage wrote: > An application provides cache stashing hints to the ethernet devices to > improve memory access latencies from the CPU and the NIC. This patch > introduces three distinct hints for this purpose. > > The RTE_ETH_DEV_STASH_HINT_HOST_WILLNEED hint indicates that the host > (CPU) requires the data written by the NIC immediately. This implies > that the CPU expects to read data from its local cache rather than LLC > or main memory if possible. This would improve memory access latency in > the Rx path. For PCI devices with TPH capability, these hints translate > into DWHR (Device Writes Host Reads) access pattern. This hint is only > valid for receive queues. > > The RTE_ETH_DEV_STASH_HINT_BI_DIR_DATA hint indicates that the host and > the device access the data structure equally. Rx/Tx queue descriptors > fit the description of such data. This hint applies to both Rx and Tx > directions.  In the PCI TPH context, this hint translates into a > Bi-Directional access pattern. > > RTE_ETH_DEV_STASH_HINT_DEV_ONLY hint indicates that the CPU is not > involved in a given device's receive or transmit paths. This implies > that only devices are involved in the IO path. Depending on the > implementation, this hint may result in data getting placed in a cache > close to the device or not cached at all. For PCI devices with TPH > capability, this hint translates into D*D* (DWDR, DRDW, DWDW, DRDR) > access patterns. This is a bidirectional hint, and it can be applied to > both Rx and Tx queues.   > > The RTE_ETH_DEV_STASH_HINT_HOST_DONTNEED hint indicates that the device > reads data written by the host (CPU) that may still be in the host's > local cache but is not required by the host anytime soon. This hint is > intended to prevent unnecessary cache invalidations that cause > interconnect latencies when a device writes to a buffer already in host > cache memory. In DPDK, this could happen with the recycling of mbufs > where a mbuf is placed in the Tx queue that then gets back into mempool > and gets recycled back into the Rx queue, all while a copy is being held > in the CPU's local cache unnecessarily. By using this hint on supported > platforms, the mbuf will be invalidated after the device completes the > buffer reading, but it will be well before the buffer gets recycled and > updated in the Rx path. This hint is only valid for transmit queues.  > > Applications use three main interfaces in the ethdev library to discover > and set cache stashing hints. rte_eth_dev_stashing_hints_tx interface is > used to set hints on a Tx queue. rte_eth_dev_stashing_hints_rx interface > is used to set hints on an Rx queue. Both of these functions take the > following parameters as inputs: a port_id (the id of the ethernet > device), a cpu_id (the target CPU), a cache_level (the level of the > cache hierarchy the data should be stashed into), a queue_id (the queue > the hints are applied to). In addition to the above list of parameters, > a type parameter indicates the type of the object the application > expects to be stashed by the hardware. Depending on the hardware, these > may vary. Intel E810 NICs support the stashing of Rx/Tx descriptors, > packet headers, and packet payloads. These are indicated by the macros > RTE_ETH_DEV_STASH_TYPE_DESC, RTE_ETH_DEV_STASH_TYPE_HEADER, > RTE_ETH_DEV_STASH_TYPE_PAYLOAD. Hardware capable of stashing data at any > given offset into a packet can use the RTE_ETH_DEV_STASH_TYPE_OFFSET > type. When an offset is used, the offset parameter in the above two > functions should be set appropriately. > > rte_eth_dev_stashing_hints_discover is used to discover the object types > and hints supported in the platform and the device. The function takes > types and hints pointers used as a bit vector to indicate hints and > types supported by the NIC. An application that intends to use stashing > hints should first discover supported hints and types and then use the > functions rte_eth_dev_stashing_hints_tx and > rte_eth_dev_stashing_hints_rx as required to set stashing hints > accordingly. eth_dev_ops structure has been updated with two new ops > that a PMD should implement to support cache stashing hints. A PMD that > intends to support cache stashing hints should initialize the > set_stashing_hints function pointer to a function that issues hints to > the underlying hardware in compliance with platform capabilities. The > same PMD should also implement a function that can return two-bit fields > indicating supported types and hints and then initialize the > discover_stashing_hints function pointer with it. If the NIC supports > cache stashing hints, the NIC should always set the > RTE_ETH_DEV_CAPA_CACHE_STASHING device capability. > > Signed-off-by: Wathsala Vithanage > Reviewed-by: Dhruv Tripathi > This is a fine grained config for performance improvement, it may help to see the performance impact and driver implementation complexity, before deciding how practical it is. As ethdev API, as long as it is separate set of APIs, I don't see much concern to have them. In existing FEC APIs, and now in the speed lane patchset [1], we are following similar design with three APIs: rte_eth_X_set() rte_eth_X_get() rte_eth_X_get_capability() Instead of adding RTE_ETH_DEV_CAPA_ macro and contaminating 'rte_eth_dev_info' with this edge use case, what do you think follow above design and have dedicated get capability API? And I can see set() has two different APIs, 'rte_eth_dev_stashing_hints_rx' & 'rte_eth_dev_stashing_hints_tx', is there a reason to have two separate APIs instead of having one which gets RX & TX as argument, as done in internal device ops? [1] https://patches.dpdk.org/project/dpdk/list/?series=32450&state=*