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 894D245A68; Mon, 21 Oct 2024 09:35:18 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 25FD4402C6; Mon, 21 Oct 2024 09:35:18 +0200 (CEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2074.outbound.protection.outlook.com [40.107.220.74]) by mails.dpdk.org (Postfix) with ESMTP id EA9004028C for ; Mon, 21 Oct 2024 09:35:16 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=kCXpup88XjnKSQvdJkaHdVhAZ5ZJPcETzF/MM/dVC+4y0oB8JbU9AiMm6mNvu4tNPqQizMSKE3Z+bcYyaepHNQPpNpf6f5myD5MpyLhIOqMQhUGIxY7elHIqX3wHfSILTJWlEOUoFRnya0ckFWzvw6tg+KYPyESc1doqrYTGYA2mgG+AJ/QhCfwb+VBRjoH29xVBwQuG5oJOg+cTfqxVUq+Ctgtfds24k9Yn7gKJLP7lrt/uV7ToLabgeWhkhJAvd3EnN+SNuxhmk/Qn/utwD8asXddi1Cf11CoJET3DX76LKj42TugJB+7+t1u9iuKPv29J1UeOVSmtY3AqnlYKPw== 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=J+5fyMszFzpT1/OSmBkGmEXwl7h1wiRSz0hxzLhXIi4=; b=ljE4/i48IYyQwkCV9ivrQ9YRAM6sRLVaZDyUHxWuhhic19XaTn6PZG1HZYg+Sy7cb4J8mcwzhMQsVVMof+juReeF0YX6CKL+kR5UQe/BLimbb0tcrcGrh0UuCVy7x343VHuTu0mBphzD9d5Ng9PhqAq5EekGJUgVFdjJiVGN8C0S/u/ZHxxG4LOQBfNKUSIkmIvtRSPXWI5vYY7wepPuRmfR2Q/uQEs5jbXFZokZ5tUltUEo3d04UQR+U+XtVqWppBWQ8Oyh7LlA3GeQAssJq+41uao62ndxkqHL0n/O0NN7twJHJoFv75EwT+tdDobzCuWFCJdlYUvffxakGXTpMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; 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=J+5fyMszFzpT1/OSmBkGmEXwl7h1wiRSz0hxzLhXIi4=; b=s5/r0oISeu48pbb6iMQHxJ+oc+vFdodEBCe17NuI/mmsb2mo+GgRRNXPzgoHNCA49/aBvS66RCPJdgKTwavNAaSEbe+Dv+1tWmgM/pWh633yARTqlWBJhLrz9e2YedhRYsKCJA66SXHCs2+DiPBkwJHFhb5ghS5ZfFyCWqLBQ4teTnpMoC8cmb/ohm9AlHRAfmcpWt6h+ohBGJHbWRytbZdAFWyHiDmBMj9xfPYuPnTA9VTE5ehMFK3BukISefECH/MVFWZFjoyl9nRUKOxIhaOF8iX2rgZ4ceYTBjFMNjvzLDIWoO+OZzz+r2BDs1xRQhKZv9vE9IusDBUW7TUGQQ== Received: from MN0PR12MB6103.namprd12.prod.outlook.com (2603:10b6:208:3c9::19) by DS7PR12MB8371.namprd12.prod.outlook.com (2603:10b6:8:e9::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.20; Mon, 21 Oct 2024 07:35:13 +0000 Received: from MN0PR12MB6103.namprd12.prod.outlook.com ([fe80::3c6c:6f63:917e:98d8]) by MN0PR12MB6103.namprd12.prod.outlook.com ([fe80::3c6c:6f63:917e:98d8%6]) with mapi id 15.20.8069.024; Mon, 21 Oct 2024 07:35:13 +0000 From: Chenbo Xia To: Wathsala Vithanage CC: "dev@dpdk.org" , "nd@arm.com" Subject: Re: [RFC v3 0/2] An API for Stashing Packets into CPU caches Thread-Topic: [RFC v3 0/2] An API for Stashing Packets into CPU caches Thread-Index: AQHbI1v67qmwmfONK0WbjOg/1oVhk7KQ0MIA Date: Mon, 21 Oct 2024 07:35:13 +0000 Message-ID: <5B42D806-268C-4041-B210-FB4045ABE674@nvidia.com> References: <20240715221141.16153-1-wathsala.vithanage@arm.com> <20241021015246.304431-1-wathsala.vithanage@arm.com> In-Reply-To: <20241021015246.304431-1-wathsala.vithanage@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN0PR12MB6103:EE_|DS7PR12MB8371:EE_ x-ms-office365-filtering-correlation-id: 418950d2-420b-4259-2c24-08dcf1a2e64e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|1800799024|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?WjZoN1ovUHlkcjBpR1Y2b2N0b3cwOUVwc2w0KzBJTFM5Ui9wNDNwa3FuV0Zw?= =?utf-8?B?SXpPekwwN3Rvamd4WHBrRXg4cDV4UzkrMnI4MWV2bGJUWXdqaHFjbEdCa0JK?= =?utf-8?B?Mld1V3dNSXhKRTgxZ216dlRqbHVRUWtrK0x6MFRiMW1aZS9JR2IxdlpRMUdF?= =?utf-8?B?dVB5ZkxpNlRtSTVXMW0wekJ1T0JsWCt0R1prVyswQ2t5cUZOS014enNua0hE?= =?utf-8?B?cHA5VjZaUVA1L2ZiSkpPR3lmYjBnTXRFZ1Z2aUpPV0JISkMwNjRsU21KenJ5?= =?utf-8?B?bVdZYmVZWW1qN3FUSzJhcXBveHFVZlYwNjlDS3dpWTNJRUxkUms1K1ZiUXh0?= =?utf-8?B?dHltSGhVaXFUbHNpaExrcTRjZXVMcVFCTkVKbW5TODNhdmZkR1JKMDRmM3JC?= =?utf-8?B?OGFQOExnY3AvZWsrU2wzVWdRVFZpRTBBWFF0QndGN2VRanMrQk40NVJOZGFI?= =?utf-8?B?a0t1WkhVQ2pTU1dOa0xEaUc3U3VLNUQ2S1ZFOFZiRUhXZGNiUHJQOXh6a0xQ?= =?utf-8?B?V1pjbFRtUGhxakFCYlNPeHV0cW4rVXdXc2ViWEttTEhteXJseUZBRVZ1dE1v?= =?utf-8?B?QTQrODZSZHJTK1ZEVCtVMmI4Q0pCaWpaZDN0Uk9lTGRseGxCSXZBY1dYRFJY?= =?utf-8?B?VjRjazdZQVo1TDdyUUxJcWFCZDl4djcyaThRd2lMTklteTBiUnZmbjRpT2R2?= =?utf-8?B?V1QwZ1RPNnZwOElJdDNkV3p6U2tsY0ZPM1FzczF1UFM3eGJsdXN3TG50KzhW?= =?utf-8?B?emlyWCt0d0lWcmZpM1pGNjFCUFo0RmdQU0p5M0dLbjIzSGxRaHQ5bjFwcWUw?= =?utf-8?B?Rm5ncm0rTjhZTFJ6dDFVMUpJQlRmMGRtd1NBdUUva3BISWE1Wkt2K1laTUNu?= =?utf-8?B?Vk8zWVhsUE9jM2t1RmUzOVdDMjBZMVd6OVdUWjlGSGpZU0c1V1FtZlNqMG0z?= =?utf-8?B?Yk1WRmdMb2VWc3BHL2lCODJHSk9TS1IrOExTQ0ZjNTVGTHpUQnIyZmllOWFB?= =?utf-8?B?ODRIMmU3QW5qS1JCdm5pTGZhSXYzT21WVUozRVJXQVkyZFpCSFFwYlpjcUxm?= =?utf-8?B?VE5XeHpKeFZudEFtc1A0Ykw2Q080VEo2VDBxRFZ6YWhvWHhFQy9nVm1Obnlh?= =?utf-8?B?NDE2a0svcVpOWENJQnovY2xGR2dKM28zYmtScTdqWkpRc04veUR1NkVaeDVx?= =?utf-8?B?ZEEvczBiNnQ1Qll0aDh6N250blBubFovMEYrZ1puU3dNSGpIYUhNVm9VRmFx?= =?utf-8?B?dElwVURiOC9aMXdub3cyMXdyNkEwT25RemdnS2tTN01rT1U4bDBCN0VPNnVu?= =?utf-8?B?Y3pNK2ZUZktkRHgzVVpCRC9zK2tYNVVMSGtTS0xJUHc0Q1Rnc3F6OXFwN0lU?= =?utf-8?B?WkFNbTR4TW82TFBWMUpEQ3dxSURvSDhJYzN5cFlMSkJIVW5EWEx0RFI2VmxG?= =?utf-8?B?QUQzZUpTSGcveXhDcURZZTBOdWhmejdlZURrcEE4empEMVVKdjd2MEFzR2pY?= =?utf-8?B?ZjFpVEhaVFJRWkN6MWN0dmtWcjZXaGJIZDA0dlVCSjV2Nng5VzNlY0FnN3Js?= =?utf-8?B?VjhSVGdpN0d5WThGSktDSDNyVUhCMFBXcmJiK1E3cnh1akNBUzA4Y0lINnUr?= =?utf-8?B?bFk0ckZYNG1JTTVsRnp0QnRnRVFqenNVNGxsdTNXTnBCVnRHZzJsbkJhVnVX?= =?utf-8?B?UnhkSUNRWVJkaWRhcU9MejNRNnZkeEp3VG5nU0RtOVVHMGVvQlNDSFRYTlFI?= =?utf-8?B?RG9KOEU1L0lQSHcxNi9sazhQYjJCa0M5aEdnSHBYdndBNEJTaittczVHY0Nk?= =?utf-8?Q?zrCOvkOTL54/3IAcRuZsuFo108v2HSax6inXo=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN0PR12MB6103.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?b3FtWkRIcW5kSUxodTdma3ZRV2U1T0Q3RUJDUzJud1Z1YTB6MTN2bzlLVEw2?= =?utf-8?B?Z2VnMk5mUjFXQXlzOWVQZW1udktxMWFGLzBvcERlbGNkN25SQ2lvQytlTGhs?= =?utf-8?B?NkRxNmFVMDdKQkRRQUxRclhxZTF1Y25TYWwvUDRIV0dsZThmR09KMllXSnFP?= =?utf-8?B?YUQ4R0hmZEVxVm1KZnl5WWtnNmVVblNJTUJyeEd0aDF6MjBKNkdtOVNWYTZZ?= =?utf-8?B?V1pPbGJlQmpCbTJqU1VCYW56VjFtMkFLOWd5NW14UkgzN3pVRGJ5VDg0alBx?= =?utf-8?B?dnpFYkJPODMwNnBIZ2pqSEEzZDlnTEJkWGhUR1N4OEgwZUJUcm9YbXBUNFc3?= =?utf-8?B?dkdNUDZYV3U0VVo0dU9ia3dQQU53Lzk1NkVJUUFTa0ZHSWV4STJtQ0pMa2or?= =?utf-8?B?dkJrZDdQNlVGWllDNndyajAzVHZ0Q1VyaTRvWEwvbWJQckJMekFOTHRZdUZP?= =?utf-8?B?QnhoSlVFV1FaeG1MS2h4WE9GZG90QjI0RGVuOGhMV0JqWllheG1kOFVBd2Uv?= =?utf-8?B?NUxJZHdHSytpZXFPUVZjeWFtTDJKY0d6cE9VWXM5MnowMHREc0JFZmlHMUhN?= =?utf-8?B?bjc5clYxeHBCYVlmck9YRlJ5WnAxaVBWdDh6UDZRTDJoM1N0RUxsMW81eG9n?= =?utf-8?B?Rm9TV1l5cHBPZ29NcWdIV1FRRityQXBSMFkzcmQzM2sxSVlnZEtwcXdoSjgr?= =?utf-8?B?bUlYbzMvTnc2aTBUZTdham5QUXVpK00yUzZacEtOSUFab2xrSytNdzlpMW1B?= =?utf-8?B?TEp5cjZ1ZUQ0R2FRdkdZc1J1a2NrNG01YTE3clJIYTVaWFdiUk1zYVZDSnJl?= =?utf-8?B?VlJweVNPbjAybitQMFMySVE2NE5scC9SZ2Y4M1cvNllDN0RPSTl0Ui9EOTBs?= =?utf-8?B?cmJKcWdFN0I3MHE0ME5TbFJzbUhyZmM1SVNtM3d6RmMvWnhIKzNaRFdPd2tw?= =?utf-8?B?RFhuYlE3T0dTNG5wdDZVWmgwQXRjcmg5bHJ6MlVKOExUTzZLaHM2OEJOUWc4?= =?utf-8?B?Wnc5ZDV0T2VRa3Z1Z0lyMC83eEVldE10S2FRWnZPUEZZcEtzQ1BLZTFDeFd1?= =?utf-8?B?SnhBRXZvWXE1YjRyQ0hMRlVJbWE4NFpjcGZQMnRTOFFXU0JKM0EySHVmR1Z5?= =?utf-8?B?VEVmdFM0MlBHcUVoTTNjU0ZoaGhUVVVpSzZzK29FOXRod1ZLdDhCaG5DWU1q?= =?utf-8?B?WnMzU0tZbDVINTBYb1JFSC9hMWplb0U4ZnhOVFU4STdWdlVsZ3UxSTNob0RY?= =?utf-8?B?cHd6OXNYZElHekh0cnNmaXEvRVlLVXgzUFNuRE5VTm8vcHB4OVBjajNxMEtr?= =?utf-8?B?SW9oR1lEdkh6VnVPdkNnWUpMUlY4cWVxa3dYOTNEZGhmL0dtREFOaDZCMTMx?= =?utf-8?B?em5WR2FON2dZcGpPMFB4TWxOTEhveXh1WEM2eFVLRjJJcDYwQjlJc2JZMzRw?= =?utf-8?B?L1hvTnZXeDBTRnJGU2pMUVJWdDZPeGNQUFI1NXc5OTBibGdIVlFtZFMxd0tW?= =?utf-8?B?UWxWYmF1ZzdVaWhkVithd2wvenlZQ2VmNFRxVjRoTjQvL1BXc1BKUWo5NHAy?= =?utf-8?B?dkVscXZMNlJrUEFHUm9YT0NTZm1zUHRSSmV1aVRPc0xxeXZlbnZya2tvbzVN?= =?utf-8?B?ajM4YlAzbzRTeEpnd0crbkR4ME1OdzUrZTBGOVpSZ3E3UktncHptYnEzUDhq?= =?utf-8?B?aldUSkxSUlo2dTc0VktOT3RhMnh0b0JVUExRclZRNGk1aWdCVzJiYjhkdEh0?= =?utf-8?B?dzI1djlQeituVmJtZGxDcEdOT3JiVWhiRnhCQlhITGFiSnBWWG9JNDl0NXVW?= =?utf-8?B?OCt2L0FxSUVFUTlBMDhTbGZqbVFIdEI0TGVhYm1WWE5ZSEtOV3IrVXpQenBo?= =?utf-8?B?TWwxR1J6VTdocWdOWitOL2lRNzJpQ2loNkhIZmNyMkdEZUtweDN2cG5YbGRo?= =?utf-8?B?MmRxYUlGMVhYQkN2RnR6eEFmZExsSHZmZG51SkxZN29XN2JrTlFqYWZpck53?= =?utf-8?B?anlYWnNoVXZmc1B6VCtKR1VQTmsrZmR4MUE5M3lvenRDSU5PZmNyb3ZLcGZL?= =?utf-8?B?cnJsdUc4RkNRQ3JlOGJNdER1bGJUdk5MQ1hzbm9YSkpxNHVFSngxWm85RFhh?= =?utf-8?B?VHVPSHl6TXkzQ3V4cFhGc3ZhZExaaUtZWmc2MkdNaFJPS1VXSTBHV0ozaE41?= =?utf-8?B?WXc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN0PR12MB6103.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 418950d2-420b-4259-2c24-08dcf1a2e64e X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Oct 2024 07:35:13.0266 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: iL/tajJrJjF14SOLNm2P+1reXVaAXdLh1Jqd9WNybzkuhNYV+nnoW0SRlbXJ367Zni0HiYlvJOcZlnhOQGP/zw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8371 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 SGksDQoNCj4gT24gT2N0IDIxLCAyMDI0LCBhdCAwOTo1MiwgV2F0aHNhbGEgVml0aGFuYWdlIDx3 YXRoc2FsYS52aXRoYW5hZ2VAYXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBFeHRlcm5hbCBlbWFpbDog VXNlIGNhdXRpb24gb3BlbmluZyBsaW5rcyBvciBhdHRhY2htZW50cw0KPiANCj4gDQo+IERQREsg YXBwbGljYXRpb25zIGJlbmVmaXQgZnJvbSBEaXJlY3QgQ2FjaGUgQWNjZXNzIChEQ0EpIGZlYXR1 cmVzIGxpa2UNCj4gSW50ZWwgRERJTyBhbmQgQXJtJ3Mgd3JpdGUtYWxsb2NhdGUtdG8tU0xDLiBI b3dldmVyLCB0aG9zZSBmZWF0dXJlcyBkbw0KPiBub3QgYWxsb3cgZmluZS1ncmFpbmVkIGNvbnRy b2wgb2YgZGlyZWN0IGNhY2hlIGFjY2Vzcywgc3VjaCBhcyBzdGFzaGluZw0KPiBwYWNrZXRzIGlu dG8gdXBwZXItbGV2ZWwgY2FjaGVzIChMMiBjYWNoZXMpIG9mIGEgcHJvY2Vzc29yIG9yIHRoZSBz aGFyZWQNCj4gY2FjaGUgb2YgYSBjaGlwbGV0LiBQQ0llIFRMUCBQcm9jZXNzaW5nIEhpbnRzIChU UEgpIGFkZHJlc3NlcyB0aGlzIG5lZWQNCj4gaW4gYSB2ZW5kb3ItYWdub3N0aWMgbWFubmVyLiBU UEggY2FwYWJpbGl0eSBoYXMgZXhpc3RlZCBzaW5jZQ0KPiBQQ0kgRXhwcmVzcyBCYXNlIFNwZWNp ZmljYXRpb24gcmV2aXNpb24gMy4wOyB0b2RheSwgbnVtZXJvdXMgTmV0d29yaw0KPiBJbnRlcmZh Y2UgQ2FyZHMgYW5kIGludGVyY29ubmVjdHMgZnJvbSBkaWZmZXJlbnQgdmVuZG9ycyBzdXBwb3J0 IFRQSA0KPiBjYXBhYmlsaXR5LiBUUEggY29tcHJpc2VzIGEgc3RlZXJpbmcgdGFnIChTVCkgYW5k IGEgcHJvY2Vzc2luZyBoaW50DQo+IChQSCkuIFNUIHNwZWNpZmllcyB0aGUgY2FjaGUgbGV2ZWwg b2YgYSBDUFUgYXQgd2hpY2ggdGhlIGRhdGEgc2hvdWxkIGJlDQo+IHdyaXR0ZW4gdG8gKG9yIERD QWVkIGludG8pLCB3aGlsZSBQSCBpcyBhIGhpbnQgcHJvdmlkZWQgYnkgdGhlIFBDSWUNCj4gcmVx dWVzdGVyIHRvIHRoZSBjb21wbGV0ZXIgb24gYW4gdXBjb21pbmcgdHJhZmZpYyBwYXR0ZXJuLiBT b21lIE5JQw0KPiB2ZW5kb3JzIGJ1bmRsZSBUUEggY2FwYWJpbGl0eSB3aXRoIGZpbmUtZ3JhaW5l ZCBjb250cm9sIG92ZXIgdGhlIHR5cGUgb2YNCj4gb2JqZWN0cyB0aGF0IGNhbiBiZSBzdGFzaGVk IGludG8gQ1BVIGNhY2hlcywgc3VjaCBhcw0KPiANCj4gLSBSeC9UeCBxdWV1ZSBkZXNjcmlwdG9y cw0KPiAtIFBhY2tldC1oZWFkZXJzDQo+IC0gUGFja2V0LXBheWxvYWRzDQo+IC0gRGF0YSBmcm9t IGEgZ2l2ZW4gb2Zmc2V0IGZyb20gdGhlIHN0YXJ0IG9mIGEgcGFja2V0DQo+IA0KPiBOb3RlIHRo YXQgc3Rhc2hhYmxlIG9iamVjdCB0eXBlcyBhcmUgb3V0c2lkZSB0aGUgc2NvcGUgb2YgUENJZSBz dGFuZGFyZDsNCj4gdGhlcmVmb3JlLCB2ZW5kb3JzIGNvdWxkIHN1cHBvcnQgYW55IGNvbWJpbmF0 aW9uIG9mIHRoZSBhYm92ZSBpdGVtcyBhcw0KPiB0aGV5IHNlZSBmaXQuDQo+IA0KPiBUbyBlbmFi bGUgVFBIIGFuZCBmaW5lLWdyYWluZWQgcGFja2V0IHN0YXNoaW5nLCB0aGlzIEFQSSBleHRlbmRz IHRoZQ0KPiBldGhkZXYgbGlicmFyeSwgUENJIGxpYnJhcnksIGFuZCB0aGUgUENJIGRyaXZlci4g SW4gdGhpcyBkZXNpZ24sIHRoZQ0KPiBhcHBsaWNhdGlvbiB2aWEgdGhlIGV0aGRldiBzdGFzaGlu ZyBBUEkgcHJvdmlkZXMgaGludHMgdG8gdGhlIFBNRCB0bw0KPiBpbmRpY2F0ZSB0aGUgdW5kZXJs eWluZyBoYXJkd2FyZSBhdCB3aGljaCBwcm9jZXNzb3IgYW5kIGNhY2hlIGxldmVsIGl0DQo+IHBy ZWZlcnMgYSBwYWNrZXQgdG8gZW5kIHVwLiBPbmNlIHRoZSBQTUQgcmVjZWl2ZXMgYSBDUFUgYW5k IGENCj4gY2FjaGUtbGV2ZWwgY29tYmluYXRpb24sIGl0IG11c3QgZXh0cmFjdCB0aGUgbWF0Y2hp bmcgU1QgZnJvbSB0aGUgVFBIDQo+IEFDUEkgX0RTTSBvZiB0aGUgUENJZSByb290IHBvcnQgdG8g d2hpY2ggdGhlIE5JQyBpcyBjb25uZWN0ZWQuIFRvDQo+IGZhY2lsaXRhdGUgdGhlIGV4dHJhY3Rp b24gb2YgU1RzLCB0aGUgUENJIGxpYnJhcnkgYW5kIHRoZSBQQ0kgZHJpdmVyDQo+IEFQSXMgYXJl IGV4dGVuZGVkLg0KPiANCj4gUE1EJ3MgaW1wbGVtZW50YXRpb24gb2YgZXRoX2Rldl9vcHMgc3Rh c2hpbmdfcnhfaGludHNfc2V0IGFuZA0KPiBzdGFzaGluZ190eF9oaW50c19zZXQgZnVuY3Rpb24g cG9pbnRlcnMgYXJlIHJlc3BvbnNpYmxlIGZvciBleHRyYWN0aW5nDQo+IHRoZSBTVC4gVGhlIFBD SSBidXMgZHJpdmVyIHByb3ZpZGVzIHRoZSBnZW5lcmljIFRQSCBTVCBleHRyYWN0aW9uIEFQSQ0K PiB0aGF0IGNhbiBiZSB1c2VkIGJ5IGFueSBQTUQgdGhhdCBkcml2ZXMgYSBQQ0llIGRldmljZS4g VGhlIGV4dHJhY3Rpb24NCj4gcHJvY2VzcyBiZWdpbnMgYnkgY2FsbGluZyBydGVfcGNpX2V4dHJh Y3RfdHBoX3N0KCkgZnVuY3Rpb24gaW4NCj4gZHJpdmVycy9idXMvcGNpL3J0ZV9idXNfcGNpLmgs IHdoaWNoIHRha2VzIGFuIGluaXRpYWxpemVkIGlucHV0IG9iamVjdA0KPiBydGVfdHBoX2FjcGlf X2RzbV9hcmdzIGFuZCBhIHBvaW50ZXIgdG8gcnRlX3RwaF9hY3BpX19kc21fcmV0dXJuIHRvDQo+ IHN0b3JlIHRoZSBTVCByZXR1cm5lZCBieSB0aGUgVFBIIF9EU00uIHJ0ZV90cGhfYWNwaV9fZHNt X2FyZyBhbmQNCj4gcnRlX3RwaF9hY3BpX19kc21fcmV0dXJuIG9iamVjdHMgYXJlIGRlZmluZWQg aW4gbGliL3BjaS9ydGVfcGNpX3RwaC5oIGFzDQo+IGRlZmluZWQgYnkgdGhlIFBDSWUgZmlybXdh cmUgc3BlY2lmaWNhdGlvbiBhbmQgdGhlIGFzc29jaWF0ZWQgRUNOIHRpdGxlZA0KPiAiUmV2aXNl ZCBfRFNNIGZvciBDYWNoZSBMb2NhbGl0eSBUUEggRmVhdHVyZXMiLiBUaGUgaGVscGVyIGZ1bmN0 aW9uDQo+IHJ0ZV9pbml0X3RwaF9hY3BpX19kc21fYXJncyBpcyB1c2VkIGJ5IHRoZSBydGVfcGNp X2V4dHJhY3RfdHBoX3N0KCkgdG8NCj4gY29udmVydCBsY29yZV9pZCBhbmQgY2FjaGVfbGV2ZWwg cHJvdmlkZWQgYnkgdGhlIFBNRCBpbnRvIHdlbGwtZm9ybWF0dGVkDQo+IHJ0ZV90cGhfYWNwaV9f ZHNtX2FyZ3MuIFRoZSBwcm9jZXNzb3Igb3IsIGluIHNvbWUgY2FzZXMsIGEgY29udGFpbmVyIElE DQo+ICh3aGljaCBpcyBzeW5vbnltb3VzIHdpdGggYSBjb3JlIGNvbXBsZXggb2YgYSBjaGlwbGV0 IGRpZSkgYW5kIHRoZSBjYWNoZQ0KPiBsZXZlbCBpbiB0aGUgcnRlX3RwaF9hY3BpX19kc21fYXJn cyBzdHJ1Y3R1cmUgYXJlIG5vdCB0aGUgc2FtZSBhcyB0aGUNCj4gbGNvcmVfaWQgYW5kIHRoZSBj YWNoZV9sZXZlbCBwcm92aWRlZCBieSB0aGUgYXBwbGljYXRpb24gdG8gdGhlIGV0aGRldg0KPiBs aWJyYXJ5LCB3aGljaCBQTUQgcGFzc2VzIGRvd24gdG8gdGhlIHJ0ZV9wY2lfZXh0cmFjdF9zdCgp IGZ1bmN0aW9uLiBUaGUNCj4gcnRlX2luaXRfdHBoX2FjcGlfX2RzbV9hcmdzIGhlbHBlciBjb252 ZXJ0cyBsY29yZV9pZCB0byBhbiBBUElDDQo+IHByb2Nlc3Nvci1pZCBvciBhIFBQVFQgcHJvY2Vz c29yLWNvbnRhaW5lci1pZCBpZiB0aGUgY29udGFpbmVyIG9mIHRoZQ0KPiBsY29yZV9pZCB3YXMg cmVxdWVzdGVkIGFzIHRoZSB0YXJnZXQgYnkgdGhlIGFwcGxpY2F0aW9uLiBTaW1pbGFybHksIGl0 DQo+IG11c3QgY29udmVydCBjYWNoZV9sZXZlbCB0byBhIFBQVFQgY2FjaGUtcmVmZXJlbmNlLWlk LiBUaGVzZSBjb252ZXJzaW9ucw0KPiBhcmUgcG9zc2libGUgd2l0aCB0aGUgaHdsb2MgbGlicmFy eSBvciBzb21lIG90aGVyIGxpYnJhcnkgRFBESyBtYXkNCj4gZXZlbnR1YWxseSBwcm92aWRlLiBI b3dldmVyLCBEUERLIGNhbm5vdCBleGVjdXRlIHRoZSBUUEggX0RTTSBkaXJlY3RseSwNCj4gYXMg aXQgY2FuIG9ubHkgYmUgZG9uZSB3aXRoIGtlcm5lbCBwcml2aWxlZ2VzLiBUaGVyZWZvcmUsIGFw cHJvcHJpYXRlDQo+IG1lY2hhbmlzbXMgbXVzdCBiZSBlc3RhYmxpc2hlZCBpbiBzdXBwb3J0ZWQg T3BlcmF0aW5nIFN5c3RlbXMoTGludXgsDQo+IEZyZWVCU0QsIGFuZCBXaW5kb3dzKSB0byBleHBv c2UgdGhlIF9EU00gcmV0dXJuIGZvciBhIGdpdmVuIGFyZ3VtZW50Lg0KPiBGb3IgaW5zdGFuY2Us IG9uIExpbnV4LCB0aGlzIG1lY2hhbmlzbSBjb3VsZCBiZSBzeXNmcy4gVGhlcmVmb3JlLCB0aGUN Cj4gaW1wbGVtZW50YXRpb24gb2YgcnRlX3BjaV9leHRyYWN0X3RwaF9zdCgpIGlzIGRvbmUgaW4g T1Mtc3BlY2lmaWMgZmlsZXMNCj4gZHJpdmVycy9idXMvcGNpL3tic2QsIGxpbnV4LCB3aW5kb3dz fS9wY2kuYy4NCj4gDQo+IE9uY2UgdGhlIFNUIGlzIGFjcXVpcmVkIGZyb20gdGhlIE9TLXNwZWNp ZmljIG1ldGhvZCBkZXNjcmliZWQgZWFybGllciwNCj4gdGhlIHN0YXNoaW5nX3J4X2hpbnRzX3Nl dC9zdGFzaGluZ190eF9oaW50c19zZXQgUE1EIGltcGxlbWVudGF0aW9ucyBhcmUNCj4gcmVhZHkg dG8gc2V0IHRoZSBTVC4gQXMgcGVyIFBDSWUgc3BlY2lmaWNhdGlvbiwgaGludHMgY2FuIGJlIHB1 dCBvbiB0aGUNCj4gTVNJLVggdGFibGVzIG9yIHVzaW5nIGEgZGV2aWNlLXNwZWNpZmljIG1ldGhv ZC4gQ29uc2lkZXJpbmcgdGhpcywgbWFueQ0KPiBOSUNzIHRoYXQgc3VwcG9ydCBUUEggYWxsb3cg c2V0dGluZyBzdGVlcmluZyB0YWdzIGFuZCBwcm9jZXNzaW5nIGhpbnRzDQo+IG9uIHRoZSBkZXZp Y2UncyBNU0ktWCB0YWJsZSBhbmQgcXVldWUgY29udGV4dHMuIEZvciBQTURzLCBzZXR0aW5nIHRo ZSBTVA0KPiBvbiBxdWV1ZSBjb250ZXh0cyBpcyB0aGUgb25seSB2aWFibGUgbWV0aG9kIG9mIHVz aW5nIFRQSC4gVGhlcmVmb3JlLCB0aGUNCj4gRFBESyBjYW4gb25seSBzdXBwb3J0IHNldHRpbmcg U1QgaW4gcXVldWUgY29udGV4dHMuIEFuIGFwcGxpY2F0aW9uIHVzZXMNCj4gdGhlIGNhY2hlIHN0 YXNoaW5nIGV0aGRldiBBUEkgYnkgZmlyc3QgY2FsbGluZyB0aGUNCj4gcnRlX2V0aF9kZXZfc3Rh c2hpbmdfY2FwYWJpbGl0aWVzX2dldCgpIGZ1bmN0aW9uIHRvIGZpbmQgb3V0IHdoYXQgb2JqZWN0 DQo+IHR5cGVzIGNhbiBiZSBzdGFzaGVkIGludG8gYSBwcm9jZXNzb3IgY2FjaGUgYnkgdGhlIE5J QyBvdXQgb2YgdGhlIG9iamVjdA0KPiB0eXBlcyBpbiB0aGUgYnVsbGV0ZWQgbGlzdCBhYm92ZS4g VGhpcyBmdW5jdGlvbiB0YWtlcyBhIHBvcnRfaWQgYW5kIGENCj4gcG9pbnRlciB0byBhIHVpbnQx Nl90IHRvIHJlcG9ydCBiYWNrIHRoZSBvYmplY3QgdHlwZSBmbGFncy4gUE1EDQo+IGltcGxlbWVu dHMgdGhlIHN0YXNoaW5nX2NhcGFiaWxpdGllc19nZXQgZnVuY3Rpb24gcG9pbnRlciBpbg0KPiBl dGhfZGV2X29wcy4gSWYgdGhlIHVuZGVybHlpbmcgcGxhdGZvcm0gb3IgdGhlIE5JQyBkb2VzIG5v dCBzdXBwb3J0IFRQSCwNCj4gdGhpcyBmdW5jdGlvbiByZXR1cm5zIC1FTk9UU1VQIGFuZCB0aGUg YXBwbGljYXRpb24gc2hvdWxkIGNvbnNpZGVyIGFueQ0KPiB2YWx1ZXMgc3RvcmVkIGluIHRoZSBv YmplY3RzIHBvaW50ZXIgaW52YWxpZC4NCj4gDQo+IE9uY2UgdGhlIGFwcGxpY2F0aW9uIGtub3dz IHRoZSBzdXBwb3J0ZWQgb2JqZWN0IHR5cGVzIHRoYXQgY2FuIGJlDQo+IHN0YXNoZWQsIHRoZSBu ZXh0IHN0ZXAgaXMgdG8gc2V0IHRoZSBzdGVlcmluZyB0YWdzIGZvciB0aGUgcGFja2V0cw0KPiBh c3NvY2lhdGVkIHdpdGggUnggYW5kIFR4IHF1ZXVlcyB2aWENCj4gcnRlX2V0aF9kZXZfc3Rhc2hp bmdfcnhfY29uZmlnX3NldCgpIGFuZA0KPiBydGVfZXRoX2Rldl9zdGFzaGluZ190eF9jb25maWdf c2V0KCkgZXRoZGV2IGxpYnJhcnkgZnVuY3Rpb24NCj4gcmVzcGVjdGl2ZWx5LiBUaGVzZSBmdW5j dGlvbnMgZXhlY3V0ZSB0aGUgIHJ0ZV9wY2lfZXh0cmFjdF90cGhfc3QoKSB2aWENCj4gZXRoX2Rl dl9vcHMgcG9pbnRlcnMgc3Rhc2hpbmdfcnhfaGludHNfc2V0IGFuZCBzdGFzaGluZ190eF9oaW50 c19zZXQuDQo+IEJvdGggdGhlIGZ1bmN0aW9ucyBoYXZlIGFuIGlkZW50aWNhbCBzaWduYXR1cmUs IGEgcG9ydF9pZCwgYSBxdWV1ZV9pZCwNCj4gYW5kIGEgY29uZmlnIG9iamVjdC4gVGhlIHBvcnRf aWQgYW5kIHRoZSBxdWV1ZS1pZCBhcmUgdXNlZCB0byBsb2NhdGUgdGhlDQo+IGRldmljZSBhbmQg dGhlIHF1ZXVlLiBUaGUgY29uZmlnIG9iamVjdCBpcyBvZiB0eXBlIHN0cnVjdA0KPiBydGVfZXRo X3N0YXNoaW5nX2NvbmZpZywgd2hpY2ggc3BlY2lmaWVzIHRoZSBsY29yZV9pZCBhbmQgdGhlDQo+ IGNhY2hlX2xldmVsLCBpbmRpY2F0aW5nIHdoZXJlIG9iamVjdHMgZnJvbSB0aGlzIHF1ZXVlIHNo b3VsZCBiZSBzdGFzaGVkLg0KPiBJdCBhbHNvIGhhcyB0aGUgZmllbGQgJ2NvbnRhaW5lcicgdG8g aW5kaWNhdGUgaWYgdGhlIHRhcmdldCBzaG91bGQgYmUNCj4gdGhlIGNvbnRhaW5lciBvZiB0aGUg cHJvY2Vzc29yIHNwZWNpZmllZCBieSB0aGUgbGNvcmVfaWQgaW4gYQ0KPiBjaGlwbGV0LWJhc2Vk IFNvQy4gVGhlICdvYmplY3RzJyBmaWVsZCBpbiB0aGUgY29uZmlnIHNldHMgdGhlIHR5cGVzIG9m DQo+IG9iamVjdHMgdGhlIGFwcGxpY2F0aW9uIHdpc2hlcyB0byBzdGFzaCBiYXNlZCBvbiB0aGUg Y2FwYWJpbGl0aWVzIGZvdW5kDQo+IGVhcmxpZXIuIElmIHRoZSBvYmplY3RzIGZpZWxkIGluY2x1 ZGVzIHRoZSBmbGFnDQo+IFJURV9FVEhfREVWX1NUQVNIX09CSkVDVF9PRkZTRVQsIHRoZSAnb2Zm c2V0JyBmaWVsZCBtdXN0IGJlIHVzZWQgdG8gc2V0DQo+IHRoZSBkZXNpcmVkIG9mZnNldC4gVGhl c2UgZnVuY3Rpb25zIGludm9rZSBQTUQgaW1wbGVtZW50YXRpb25zIG9mIHRoZQ0KPiBzdGFzaGlu ZyBmdW5jdGlvbmFsaXR5IHZpYSBzdGFzaGluZ19yeF9oaW50c19zZXQgYW5kDQo+IHN0YXNoaW5n X3R4X2hpbnRzX3NldCwgZnVuY3Rpb24gcG9pbnRlcnMgaW4gZXRoX2Rldl9vcHMsIHJlc3BlY3Rp dmVseS4NCj4gDQo+IA0KPiBXYXRoc2FsYSBWaXRoYW5hZ2UgKDIpOg0KPiAgcGNpOiBpbnRyb2R1 Y2UgdGhlIFBDSWUgVExQIFByb2Nlc3NpbmcgSGludHMgQVBJDQo+ICBldGhkZXY6IGludHJvZHVj ZSB0aGUgY2FjaGUgc3Rhc2hpbmcgaGludHMgQVBJDQo+IA0KPiBkcml2ZXJzL2J1cy9wY2kvYnNk L3BjaS5jICAgICB8ICAxMiArKysNCj4gZHJpdmVycy9idXMvcGNpL2xpbnV4L3BjaS5jICAgfCAg MTIgKysrDQo+IGRyaXZlcnMvYnVzL3BjaS9ydGVfYnVzX3BjaS5oIHwgIDIyICsrKysrDQo+IGRy aXZlcnMvYnVzL3BjaS92ZXJzaW9uLm1hcCAgIHwgICAzICsNCj4gZHJpdmVycy9idXMvcGNpL3dp bmRvd3MvcGNpLmMgfCAgMTQgKysrDQo+IGxpYi9ldGhkZXYvZXRoZGV2X2RyaXZlci5oICAgIHwg IDY2ICsrKysrKysrKysrKysrDQo+IGxpYi9ldGhkZXYvcnRlX2V0aGRldi5jICAgICAgIHwgMTIw ICsrKysrKysrKysrKysrKysrKysrKysrKysrDQo+IGxpYi9ldGhkZXYvcnRlX2V0aGRldi5oICAg ICAgIHwgMTU2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gbGliL2V0aGRl di92ZXJzaW9uLm1hcCAgICAgICAgfCAgIDQgKw0KPiBsaWIvcGNpL21lc29uLmJ1aWxkICAgICAg ICAgICB8ICAgMiArDQo+IGxpYi9wY2kvcnRlX3BjaS5oICAgICAgICAgICAgIHwgICAyICsNCj4g bGliL3BjaS9ydGVfcGNpX3RwaC5jICAgICAgICAgfCAgMjAgKysrKysNCj4gbGliL3BjaS9ydGVf cGNpX3RwaC5oICAgICAgICAgfCAxMTEgKysrKysrKysrKysrKysrKysrKysrKysrDQo+IDEzIGZp bGVzIGNoYW5nZWQsIDU0NCBpbnNlcnRpb25zKCspDQo+IGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIv cGNpL3J0ZV9wY2lfdHBoLmMNCj4gY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9wY2kvcnRlX3BjaV90 cGguaA0KPiANCj4g4oCUDQo+IDIuMzQuMQ0KPiANCg0KRG8geW91IGhhdmUgc29tZSBudW1iZXJz IGFib3V0IGhvdyBtdWNoIHBlcmZvcm1hbmNlIHRoaXMgZmVhdHVyZQ0KY2FuIGltcHJvdmU/DQoN Ci9DaGVuYm8gDQoNCg0K