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 2BE2543A21; Wed, 31 Jan 2024 16:56:24 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C30AA4026B; Wed, 31 Jan 2024 16:56:23 +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 1EF7040269 for ; Wed, 31 Jan 2024 16:56:22 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VJT0ridIrxOU2PRdjpOM8OGl9a+uWHSyPYsfTcE+uMWt6uzLXFqbyLdLIARDrxtCudkbbLqePsXSz/mSGoaAQoKyv/PgTTdWhKKuKhFtwoU/HaGXOiUzuEKik6c347+iS9CueXqaEb3BAkh4Uv5qVAHRjWcgF9MM7Ia62DTkqR8EyQBu+z8hmdLYzoegbMuSwf/nfgcV1s7XwUdeBNFwZDuEhPM1Jij+7c0dnl+/j5Rdf+3hrhmw7SEbeVg2u8DEqMaEX1pc4GMo8DVx7JIUpuSwBIeqFxzg3EjLjuRlIghy+1eeXr6ZDg5dDjWtZJTUD+wlaWHJBfpVOoa2qPrwjA== 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=zHQCCaeJ0o19+jCm7TMA1Kpp8r4QWH+R+kw2CIT8RqM=; b=ZwO2E4Ecf9VPQv0DpqaMRSjL6gouQAyn/n8pqv6zSncrvKq2kLOtw7BdWGF4AMbVaemlmEcgskren+yy0QmVyyfhk8jJFIWfy50G0IQx+9nCVeV06JEudfNsZ6Cxc6dpaExvJFn8mn1v6FrHT4bEe4ufPB+94VsGWTFJ4ygD0mNo5ROeC6hjVxgVXKbgUP61RNGNXpxrKnAf/pCii6MHfV7cC1IVxyvojNzEWF4Ri07JxvW1gMfk1jgk1D4IuNUxFqjLzwP7SYfI3Yu8dmuLkx87HrolD8Qik2eU51UDov5yZlZXOA9g3NHl3xFi9N6iCNeAuh3vyGXGGH5u6wCC9w== 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=zHQCCaeJ0o19+jCm7TMA1Kpp8r4QWH+R+kw2CIT8RqM=; b=kTS+rIeDIHTPkyhA5zVXf27G3PvVWvNv2dqgo+eYz6wvKs3fK07m+hQjhpIK57sdYHnYcf8BWzvApAPJNj1Y9BCTNcVnwAS/aNhu5ttoXdvXYQeIig+XP5fga8pf1541fCYS4KzjMk0d16OW0XRWArOlr5tT993D0nev3mgn0v3nmoKtWo0K5kjed+0ZsLtPPUbTzULC6RhrWLAm0dGDdb5Sur2dMXhbPGwtMc7Ced2K+nPPAn1Y3oG3EDvRLjq0DxmIGfr7KyBiqGwA04xbdGe4RLrE3pBViZ0xF91WlO6MPAX06/TIq2WxZNtC064q4qYLL5SzjcAzzS56NjyD6g== Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) by MW4PR12MB6803.namprd12.prod.outlook.com (2603:10b6:303:20e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.34; Wed, 31 Jan 2024 15:56:19 +0000 Received: from MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::4b7d:c23d:42aa:3f9e]) by MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::4b7d:c23d:42aa:3f9e%7]) with mapi id 15.20.7228.029; Wed, 31 Jan 2024 15:56:19 +0000 From: Ori Kam To: Suanming Mou , Ferruh Yigit , Aman Singh , Yuying Zhang , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Andrew Rybchenko CC: "dev@dpdk.org" Subject: RE: [PATCH v3 2/3] ethdev: add compare item Thread-Topic: [PATCH v3 2/3] ethdev: add compare item Thread-Index: AQHaR5MtMzvaTjP4o02/zMw+SYvjsrDytboAgACa2YCAANoq4A== Date: Wed, 31 Jan 2024 15:56:19 +0000 Message-ID: References: <20231219013337.531548-1-suanmingm@nvidia.com> <20240115091318.1053433-1-suanmingm@nvidia.com> <20240115091318.1053433-3-suanmingm@nvidia.com> <2594409d-5c8d-4347-b724-eece2b775376@amd.com> In-Reply-To: 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: MW2PR12MB4666:EE_|MW4PR12MB6803:EE_ x-ms-office365-filtering-correlation-id: 3209e850-fa91-43c9-0aa5-08dc22752a06 x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1tcdMU7FEKsddLewBIpkVL9kelYs9bk8sjGvh+CQJj+59KaEoAE4OIK9Zksm8b0wXuxukuTlpzvciG6hVHdLapqEZFdrdHqUZTRgDl4U+Mw3k/v+RKJEiLK1BusdwvZklXP/pQZxCpKnELJ2t+EIfOyyscmO8FovtTvlSaaI4g1WrGG2W7cBc5ZW4u65ODoCrHpF9UXd9RoOZQTCjCNWBuWAn0ok5wHJwHu5OfnkT0i+WuHLtS/f9nTGQCuWx68fLFCM4V0AUQ/5psEaBmPUsxa8K7S8HHhzb6tnqqmN8oganAdzvVrwdUA1HBo0JojJ1GM7QROe7nL5gxYV3qJNE61rwzzp6CQ83SmS4Go2p1kb/bbeWwukQp0c1lp8AMQNNyOsFp2zkWaJyDbu7g7LzkKiQEkPMLbjmPrBTJdMntqW0Lb0Y9kGzZqtGT8exxHaUh8oD01/D+BHZjnZLDTx4kT0P7YwQ+UdVch/pGiMcwihyu2AfExzfSwO7Sc9HNvOH9Yvl9LDXwy/ja8Xlr2BClZNMAJXaRzbxt8J6ouOaHGP9kyQJq0THAijosXlmdEsoamI0iQYKqSRKQG6icgp1jQtCMA7ALEdtsAEDV9bv+1+CL0qcBL3A+Jb6qpH7u1ZuXsYYcpDvYOWapXTBgm1i1+JpU/zwp00Bq29D8AbIi1CiPKrFwFhGh6cUfrtMKsw x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW2PR12MB4666.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(366004)(346002)(376002)(39860400002)(396003)(136003)(230922051799003)(230273577357003)(230173577357003)(1800799012)(451199024)(186009)(64100799003)(2906002)(66556008)(5660300002)(86362001)(33656002)(38100700002)(478600001)(38070700009)(41300700001)(53546011)(6506007)(83380400001)(7696005)(9686003)(26005)(122000001)(71200400001)(8936002)(316002)(52536014)(4326008)(8676002)(66946007)(66446008)(64756008)(76116006)(110136005)(55016003)(66476007)(21314003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WXdHQkpERmU4aUt0YXQ0eDNTS3JWaU1EUUlNNUNsc1U5NzBrVEtuSlJSdHVv?= =?utf-8?B?MWo1Z1h6em9RZ1RQY3ZPRWRxQ0VFRis0Sm00eWlUK1R1ZFlGYnFmQjM0ZWRB?= =?utf-8?B?Z0JXdnR3TUlqV2VOQzQ5NnBUbkVGbHc2ZWxDNGdwaWhyVGxPeUIyRTB2UElY?= =?utf-8?B?cnluNE5tZ0RyNmI4dzZpa0JaU1BzSGtwVk1qZnphQmNueXBIQVFCTGVSb0li?= =?utf-8?B?d1YxaVlBOFBhdlNVY1B0NE9mazhpL1ZjYVRaWXA0Y2o2RzRFVUlHc3hOYVRx?= =?utf-8?B?Z0YrZ1k1akJCZCthWjZtSGxoU3UyNGlPRmtqUUpXc3V5dnpGd3BlL1NUVkhZ?= =?utf-8?B?MTR2TEg1MWxDelM4Mk95Y2t2KzNac2FCN3hzQ0Y2bEt1cXJrMkxYbk15QmZH?= =?utf-8?B?NkpBa21MVm91TkhYeGM0QVcyR3hiRlVZWnBFVVJnK0xDcVVXWG0xN1U4S0pQ?= =?utf-8?B?UXdYVWZDeDdWaUN0anFTTWhJcUcvUjNVcHZvQzI1WHVNbWZIdzYyanJ2OG9V?= =?utf-8?B?dDhGRzBmREs5Q3FWMDFudll4WXdFTW9pR2pxbG41bjRFV1F5aXNUajI1K1Ev?= =?utf-8?B?Zk9scUh6cExINlpja1B2WklsRmQ5STh0U21sblRmZjZhUVVEU2dYaEdFZVVq?= =?utf-8?B?WGEwUS9oZ0piK2ZBRHo0aTNoYlFnaWNjWldtbUhob0QvTzh3YnhRcTJrWFIz?= =?utf-8?B?Rm93R2wvcFVzdVJEZVpFL20xcWZLd295bGNiTmFab0JqOVZRTDA0ck9Eb2FB?= =?utf-8?B?cDdJSUY0a2lpd1VqUksvUGN3WUYwWmMxcUZmVERXUEp2dlJxVjhteFFkbzJm?= =?utf-8?B?RXo4azhBWjVnWXptOXV0QitubVZqVnlEMmJKWFY0N3ZZeU5Qb3d3VkpycjQz?= =?utf-8?B?aFA5Q2pSSWR3WGViODAzbEc0d1pkb3MrYUNPT2lpc0dYUzVudW0zeFlPOGp5?= =?utf-8?B?dmF1aERMcE42VElxUk8vK0pBY09MSXBibGFqaEFYQjc5c292aHg3TEkzOHlS?= =?utf-8?B?bWxGYXNOczRQZ0JOOUdTQzVTTWc3MlhocW1UcWUrMllvWHIvRGtDQ0lEZ0RE?= =?utf-8?B?VkxBSm5HU2phM0ZGUDJxWFc5aTJ6TU1RdlN2MHM3aXkwS2EwYmNXaDBaMkow?= =?utf-8?B?dkswMUovMDRqRlhzTERyK2p4c1NZMHo1ZTk5ODZPVFVRd3ROWHZ5a05yT2F4?= =?utf-8?B?U29iZVJxV1k5U01rYzIvRXMrd212QzYyL3NWQ1pNak1DUVEwaDhwaVJ1NmF3?= =?utf-8?B?cmZKQ1BPUUlmV1EreURaZDAxOFpDZjV2L1M5Q1gzRVdMQTFKZG9EbEplVW1S?= =?utf-8?B?dS9nOGNVUXd0MlBycktDTDROS21xa0I5V0EzK0R4akJKOGRlOHgzWEd5U0lt?= =?utf-8?B?UE45SjBqUlUwY0ZvTFdBVlRDT1F0ZCtUcll3VGxaWmF1RC9xMEJCd3l4cFpj?= =?utf-8?B?ZHBla1ArdjhsUUFPSFoyZkVSSmdjdW95bmxYVGtZVWtzS0ZleDVwNXBUcmVl?= =?utf-8?B?QUI4eDBWUE0wUUY1Y0xVNi8xY1YwRDVSUXRVS1F6NktTVk1zRGVHYS9STkUv?= =?utf-8?B?NGx3L0UxZnM3MUVzeTd2cGJVQ0tNRFNJaTE3ZEdhekU4V0ZiRWNoWFJZNVRJ?= =?utf-8?B?SXlDWWJJb0FvL1lhaWYrYndoakMra1RPRkpyeFRpTi9sNEp3LzZBbGlESTc2?= =?utf-8?B?cUdRTTZGUktvNHZPLzB4TXlUREZadmVnNktjT202cS9qdVhoZDNjQmtHbWwx?= =?utf-8?B?Z05kRXEzYVBzOVJsWEJiSDcxWS95TTZTUzNIZFZEZVBranNjR3hCTE5acFlI?= =?utf-8?B?dm53ZFpYejVQSXNNN2NxT0dPU0tud3ZnTGF6bm5wS05Kbi9OSGtJNm9Mc25S?= =?utf-8?B?NEpZek93TEV2WGtSdWtkQ0Z5NTVJWHdKeDhzUmxpT0Q5VTF0eDZjYUxMWmU1?= =?utf-8?B?WmVUbzg4T1ZXMUdSVWJVOVZoSlJXU3RTZUtoZllMVnpzTDN1aERPL0pYTFE1?= =?utf-8?B?VGI0c0NENm5sUTVuazFzVTA5SEpuK21PTjhRMTR6YmdzNDVTaDhLOXJBbEhT?= =?utf-8?B?NnBnVXBMMDRTTmRLZFRuSkM0cm56cUNKbTMzUE1OY2l6RmI4ZG1qU2k3cjhw?= =?utf-8?Q?8uOM=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW2PR12MB4666.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3209e850-fa91-43c9-0aa5-08dc22752a06 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jan 2024 15:56:19.0769 (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: y2ORXeB7dQkIgFJI6+Q4VKAxs51ZnGLr8xvvX3E9L//U3QHD3Y4VG6va4UEW5m1rDAY+lNBsdXkL+OI0fnzwRA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6803 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 SGkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBTdWFubWluZyBNb3Ug PHN1YW5taW5nbUBudmlkaWEuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIEphbnVhcnkgMzEsIDIw MjQgNDo0OCBBTQ0KPiANCj4gSGksDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+ID4gRnJvbTogRmVycnVoIFlpZ2l0IDxmZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gPiBTZW50 OiBXZWRuZXNkYXksIEphbnVhcnkgMzEsIDIwMjQgMTozNCBBTQ0KPiA+IFRvOiBTdWFubWluZyBN b3UgPHN1YW5taW5nbUBudmlkaWEuY29tPjsgT3JpIEthbQ0KPiA8b3Jpa2FAbnZpZGlhLmNvbT47 DQo+ID4gQW1hbiBTaW5naCA8YW1hbi5kZWVwLnNpbmdoQGludGVsLmNvbT47IFl1eWluZyBaaGFu Zw0KPiA+IDx5dXlpbmcuemhhbmdAaW50ZWwuY29tPjsgTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmph bG9uIChFWFRFUk5BTCkNCj4gPiA8dGhvbWFzQG1vbmphbG9uLm5ldD47IEFuZHJldyBSeWJjaGVu a28NCj4gPiA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+DQo+ID4gQ2M6IGRldkBkcGRr Lm9yZw0KPiA+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjMgMi8zXSBldGhkZXY6IGFkZCBjb21wYXJl IGl0ZW0NCj4gPg0KPiA+IE9uIDEvMTUvMjAyNCA5OjEzIEFNLCBTdWFubWluZyBNb3Ugd3JvdGU6 DQo+ID4gPiBUaGUgbmV3IGl0ZW0gdHlwZSBpcyBhZGRlZCBmb3IgdGhlIGNhc2UgdXNlciB3YW50 cyB0byBtYXRjaCB0cmFmZmljDQo+ID4gPiBiYXNlZCBvbiBwYWNrZXQgZmllbGQgY29tcGFyZSBy ZXN1bHQgd2l0aCBvdGhlciBmaWVsZHMgb3IgaW1tZWRpYXRlDQo+ID4gPiB2YWx1ZS4NCj4gPiA+ DQo+ID4gPiBlLmcuIHRha2UgYWR2YW50YWdlIHRoZSBjb21wYXJlIGl0ZW0gdXNlciB3aWxsIGJl IGFibGUgdG8gYWNjdW11bGF0ZSBhDQo+ID4gPiBJUHY0L1RDUCBwYWNrZXQncyBUQ1AgZGF0YV9v ZmZzZXQgYW5kIElQdjQgSUhMIGZpZWxkIHRvIGEgdGFnDQo+ID4gPiByZWdpc3RlciwgdGhlbiBj b21wYXJlIHRoZSB0YWcgcmVnaXN0ZXIgd2l0aCBJUHY0IGhlYWRlciB0b3RhbCBsZW5ndGgNCj4g PiA+IHRvIHVuZGVyc3RhbmQgdGhlIHBhY2tldCBoYXMgcGF5bG9hZCBvciBub3QuDQo+ID4gPg0K PiA+DQo+ID4gYWNrLCBhYm92ZSBzYW1wbGUgbWFrZXMgaXQgZWFzaWVyIHRvIHVuZGVyc3RhbmQu DQo+ID4NCj4gPiBUaGlzIHBhdGNoIGlzIGFkZGluZyB0ZXN0cG1kIGNvbW1hbmRzLCBjYW4geW91 IHBsZWFzZSBwcm92aWRlIHNvbWUNCj4gc2FtcGxlDQo+ID4gY29tbWFuZHMgaW4gY29tbWl0IGxv Zz8NCj4gPiBUaGUgbW9yZSBzYW1wbGVzIGFyZSBiZXR0ZXIsIGFzIGZhciBhcyBJIHJlbWVtYmVy IHRoZXJlIHdhcyBhIHRlc3RwbWQNCj4gPiBkb2N1bWVudGF0aW9uIHRoYXQgZG9jdW1lbnRzIHRo ZSBzYW1wbGUgdXNhZ2VzLCBjYW4geW91IHBsZWFzZSBjaGVjaw0KPiBmb3IgaXQ/DQoNCltTbmlw IC4uXQ0KDQo+ID4NCj4gPiA+ICsvKioNCj4gPiA+ICsgKiBAd2FybmluZw0KPiA+ID4gKyAqIEBi IEVYUEVSSU1FTlRBTDogdGhpcyBzdHJ1Y3R1cmUgbWF5IGNoYW5nZSB3aXRob3V0IHByaW9yIG5v dGljZQ0KPiA+ID4gKyAqDQo+ID4gPiArICogRmllbGQgZGVzY3JpcHRpb24gZm9yIHBhY2tldCBm aWVsZC4NCj4gPiA+ICsgKi8NCj4gPiA+ICtzdHJ1Y3QgcnRlX2Zsb3dfZmllbGRfZGF0YSB7DQo+ ID4gPiArCWVudW0gcnRlX2Zsb3dfZmllbGRfaWQgZmllbGQ7IC8qKjwgRmllbGQgb3IgbWVtb3J5 IHR5cGUgSUQuICovDQo+ID4gPiArCXVuaW9uIHsNCj4gPiA+ICsJCXN0cnVjdCB7DQo+ID4gPiAr CQkJLyoqIEVuY2Fwc3VsYXRpb24gbGV2ZWwgYW5kIHRhZyBpbmRleCBvciBmbGV4IGl0ZW0NCj4g PiBoYW5kbGUuICovDQo+ID4gPiArCQkJdW5pb24gew0KPiA+ID4gKwkJCQlzdHJ1Y3Qgew0KPiA+ ID4gKwkJCQkJLyoqDQo+ID4gPiArCQkJCQkgKiBQYWNrZXQgZW5jYXBzdWxhdGlvbiBsZXZlbA0K PiBjb250YWluaW5nDQo+ID4gPiArCQkJCQkgKiB0aGUgZmllbGQgdG8gbW9kaWZ5Lg0KPiA+ID4g KwkJCQkJICoNCj4gPiA+ICsJCQkJCSAqIC0gQHAgMCByZXF1ZXN0cyB0aGUgZGVmYXVsdA0KPiBi ZWhhdmlvci4NCj4gPiA+ICsJCQkJCSAqICAgRGVwZW5kaW5nIG9uIHRoZSBwYWNrZXQgdHlwZSwg aXQNCj4gPiA+ICsJCQkJCSAqICAgY2FuIG1lYW4gb3V0ZXJtb3N0LCBpbm5lcm1vc3QNCj4gb3IN Cj4gPiA+ICsJCQkJCSAqICAgYW55dGhpbmcgaW4gYmV0d2Vlbi4NCj4gPiA+ICsJCQkJCSAqDQo+ ID4gPiArCQkJCQkgKiAgIEl0IGJhc2ljYWxseSBzdGFuZHMgZm9yIHRoZQ0KPiA+ID4gKwkJCQkJ ICogICBpbm5lcm1vc3QgZW5jYXBzdWxhdGlvbiBsZXZlbC4NCj4gPiA+ICsJCQkJCSAqICAgTW9k aWZpY2F0aW9uIGNhbiBiZSBwZXJmb3JtZWQNCj4gPiA+ICsJCQkJCSAqICAgYWNjb3JkaW5nIHRv IFBNRCBhbmQgZGV2aWNlDQo+ID4gPiArCQkJCQkgKiAgIGNhcGFiaWxpdGllcy4NCj4gPiA+ICsJ CQkJCSAqDQo+ID4gPiArCQkJCQkgKiAtIEBwIDEgcmVxdWVzdHMgbW9kaWZpY2F0aW9uIHRvIGJl DQo+ID4gPiArCQkJCQkgKiAgIHBlcmZvcm1lZCBvbiB0aGUgb3V0ZXJtb3N0DQo+IHBhY2tldA0K PiA+ID4gKwkJCQkJICogICBlbmNhcHN1bGF0aW9uIGxldmVsLg0KPiA+ID4gKwkJCQkJICoNCj4g PiA+ICsJCQkJCSAqIC0gQHAgMiBhbmQgc3Vic2VxdWVudCB2YWx1ZXMNCj4gPiByZXF1ZXN0DQo+ ID4gPiArCQkJCQkgKiAgIG1vZGlmaWNhdGlvbiB0byBiZSBwZXJmb3JtZWQgb24NCj4gPiA+ICsJ CQkJCSAqICAgdGhlIHNwZWNpZmllZCBpbm5lciBwYWNrZXQNCj4gPiA+ICsJCQkJCSAqICAgZW5j YXBzdWxhdGlvbiBsZXZlbCwgZnJvbQ0KPiA+ID4gKwkJCQkJICogICBvdXRlcm1vc3QgdG8gaW5u ZXJtb3N0IChsb3dlciB0bw0KPiA+ID4gKwkJCQkJICogICBoaWdoZXIgdmFsdWVzKS4NCj4gPiA+ ICsJCQkJCSAqDQo+ID4gPiArCQkJCQkgKiBWYWx1ZXMgb3RoZXIgdGhhbiBAcCAwIGFyZSBub3QN Cj4gPiA+ICsJCQkJCSAqIG5lY2Vzc2FyaWx5IHN1cHBvcnRlZC4NCj4gPiA+ICsJCQkJCSAqDQo+ ID4gPiArCQkJCQkgKiBAbm90ZSB0aGF0IGZvciBNUExTIGZpZWxkLA0KPiA+ID4gKwkJCQkJICog ZW5jYXBzdWxhdGlvbiBsZXZlbCBhbHNvIGluY2x1ZGUNCj4gPiA+ICsJCQkJCSAqIHR1bm5lbCBz aW5jZSBNUExTIG1heSBhcHBlYXIgaW4NCj4gPiA+ICsJCQkJCSAqIG91dGVyLCBpbm5lciBvciB0 dW5uZWwuDQo+ID4gPiArCQkJCQkgKi8NCj4gPiA+ICsJCQkJCXVpbnQ4X3QgbGV2ZWw7DQo+ID4g PiArCQkJCQl1bmlvbiB7DQo+ID4gPiArCQkJCQkJLyoqDQo+ID4gPiArCQkJCQkJICogVGFnIGlu ZGV4IGFycmF5IGluc2lkZQ0KPiA+ID4gKwkJCQkJCSAqIGVuY2Fwc3VsYXRpb24gbGV2ZWwuDQo+ ID4gPiArCQkJCQkJICogVXNlZCBmb3IgVkxBTiwgTVBMUyBvcg0KPiBUQUcNCj4gPiB0eXBlcy4N Cj4gPiA+ICsJCQkJCQkgKi8NCj4gPiA+ICsJCQkJCQl1aW50OF90IHRhZ19pbmRleDsNCj4gPiA+ ICsJCQkJCQkvKioNCj4gPiA+ICsJCQkJCQkgKiBHZW5ldmUgb3B0aW9uIGlkZW50aWZpZXIuDQo+ ID4gPiArCQkJCQkJICogUmVsZXZhbnQgb25seSBmb3INCj4gPiA+ICsJCQkJCQkgKg0KPiA+IFJU RV9GTE9XX0ZJRUxEX0dFTkVWRV9PUFRfWFhYWA0KPiA+ID4gKwkJCQkJCSAqIG1vZGlmaWNhdGlv biB0eXBlLg0KPiA+ID4gKwkJCQkJCSAqLw0KPiA+ID4gKwkJCQkJCXN0cnVjdCB7DQo+ID4gPiAr CQkJCQkJCS8qKg0KPiA+ID4gKwkJCQkJCQkgKiBHZW5ldmUgb3B0aW9uDQo+IHR5cGUuDQo+ID4g PiArCQkJCQkJCSAqLw0KPiA+ID4gKwkJCQkJCQl1aW50OF90IHR5cGU7DQo+ID4gPiArCQkJCQkJ CS8qKg0KPiA+ID4gKwkJCQkJCQkgKiBHZW5ldmUgb3B0aW9uDQo+IGNsYXNzLg0KPiA+ID4gKwkJ CQkJCQkgKi8NCj4gPiA+ICsJCQkJCQkJcnRlX2JlMTZfdCBjbGFzc19pZDsNCj4gPiA+ICsJCQkJ CQl9Ow0KPiA+ID4gKwkJCQkJfTsNCj4gPiA+ICsJCQkJfTsNCj4gPiA+ICsJCQkJc3RydWN0IHJ0 ZV9mbG93X2l0ZW1fZmxleF9oYW5kbGUNCj4gKmZsZXhfaGFuZGxlOw0KPiA+ID4gKwkJCX07DQo+ ID4gPiArCQkJLyoqIE51bWJlciBvZiBiaXRzIHRvIHNraXAgZnJvbSBhIGZpZWxkLiAqLw0KPiA+ ID4gKwkJCXVpbnQzMl90IG9mZnNldDsNCj4gPiA+ICsJCX07DQo+ID4gPiArCQkvKioNCj4gPiA+ ICsJCSAqIEltbWVkaWF0ZSB2YWx1ZSBmb3IgUlRFX0ZMT1dfRklFTERfVkFMVUUsIHByZXNlbnRl ZA0KPiBpbg0KPiA+IHRoZQ0KPiA+ID4gKwkJICogc2FtZSBieXRlIG9yZGVyIGFuZCBsZW5ndGgg YXMgaW4gcmVsZXZhbnQNCj4gcnRlX2Zsb3dfaXRlbV94eHguDQo+ID4gPiArCQkgKiBUaGUgaW1t ZWRpYXRlIHNvdXJjZSBiaXRmaWVsZCBvZmZzZXQgaXMgaW5oZXJpdGVkIGZyb20NCj4gPiA+ICsJ CSAqIHRoZSBkZXN0aW5hdGlvbidzIG9uZS4NCj4gPiA+ICsJCSAqLw0KPiA+ID4gKwkJdWludDhf dCB2YWx1ZVsxNl07DQo+ID4gPiArCQkvKioNCj4gPiA+ICsJCSAqIE1lbW9yeSBhZGRyZXNzIGZv ciBSVEVfRkxPV19GSUVMRF9QT0lOVEVSLCBtZW1vcnkNCj4gPiBsYXlvdXQNCj4gPiA+ICsJCSAq IHNob3VsZCBiZSB0aGUgc2FtZSBhcyBmb3IgcmVsZXZhbnQgZmllbGQgaW4gdGhlDQo+ID4gPiAr CQkgKiBydGVfZmxvd19pdGVtX3h4eCBzdHJ1Y3R1cmUuDQo+ID4gPiArCQkgKi8NCj4gPiA+ICsJ CXZvaWQgKnB2YWx1ZTsNCj4gPiA+ICsJfTsNCj4gPiA+ICt9Ow0KPiA+ID4gKw0KPiA+ID4NCj4g Pg0KPiA+IEkgYW0gYXdhcmUgdGhhdCB5b3UgYXJlIGp1c3QgbW92aW5nIHRoZSBhYm92ZSBzdHJ1 Y3QsIGJ1dCBpdCBpcyBuZXN0ZWQgdG9vDQo+IG11Y2gNCj4gPiB3aGljaCBpcyBtYWtpbmcgaXQg aGFyZCB0byByZWFkLg0KPiA+DQo+ID4gQXMgeW91IGFyZSB0b3VjaGluZyBpdCwgY2FuIHdlIGV4 dHJhY3Qgc29tZSBzdHJ1Y3RzIGFuZCBtYWtlIHRoaXMgc3RydWN0IGxlc3MNCj4gPiBuZXN0ZWQs IHdoYXQgZG8geW91IHRoaW5rPw0KPiA+IE9mIGNvdXJzZSBpdCBuZWVkcyB0byBiZSBkb25lIGlu IHNlcGFyYXRlIHBhdGNoLCBhcyBhIHByZXBlcmF0aW9uL2NsZWFuLXVwDQo+IHBhdGNoDQo+ID4g YmVmb3JlIG1vdmluZyBpdCBhcm91bmQuDQo+IA0KPiBBZ3JlZSB0aGUgc3RydWN0IG1heWJlIGEg Yml0IG5lc3RlZC4gQnV0IG5vdCBzdXJlIGhvdyBpdCB3YXMgZGlzY3Vzc2VkDQo+IGJlZm9yZSBk dXJpbmcgdGhlIGxhc3QgbmV3IG1lbWJlciB3YXMgYWRkZWQuLi4gQE9yaSwgRG8geW91IGhhdmUg YW55IGlkZWENCj4gYWJvdXQgdGhpcz8NCj4gDQoNCkFzIGZhciBhcyBJIHJlbWVtYmVyLCBpdCB3 YXMgbmV2ZXIgZGlzY3Vzc2VkLCANCg0KSSB0aGluayBmb3IgdGhpcyBzZXJpZXMgd2Ugc2hvdWxk IGtlZXAgaXQgYXMgaXMsIGFuZCByZXZpc2UgaXQgbGF0ZXIuDQoNCkJlc3QsDQpPcmkNCj4gQW5k IGlmIGl0IGlzIHJlYWxseSBleHBlY3RlZCwgSSBiZWxpZXZlIGFub3RoZXIgbmV3IHRocmVhZCBp cyB3b3J0aCBmb3IgdGhhdA0KPiBjaGFuZ2UsICBiZXR0ZXIgbm90IGJlIGluIHRoYXQgc2VyaWVz Lg0KPiBOZWVkIHRvIGRpc2N1c3MgdGhlIG5ldyBzdHJ1Y3QgbmFtZSBhbmQgb3RoZXIgc3R1ZmYu IFdoYXQgZG8geW91IHRoaW5rPw0KPiANCj4gPg0KPiA+IDwuLi4+DQo+ID4NCj4gPiA+ICsvKioN Cj4gPiA+ICsgKg0KPiA+ID4gKyAqIFJURV9GTE9XX0lURU1fVFlQRV9DT01QQVJFDQo+ID4gPiAr ICoNCj4gPiA+ICsgKiBNYXRjaGVzIHRoZSBwYWNrZXQgd2l0aCBjb21wYXJlIHJlc3VsdC4NCj4g PiA+ICsgKg0KPiA+ID4gKyAqIFRoZSBvcGVyYXRpb24gbWVhbnMgYSBjb21wYXJlIHdpdGggYiBy ZXN1bHQuDQo+ID4gPiArICovDQo+ID4gPiArc3RydWN0IHJ0ZV9mbG93X2l0ZW1fY29tcGFyZSB7 DQo+ID4gPiArCWVudW0gcnRlX2Zsb3dfaXRlbV9jb21wYXJlX29wIG9wZXJhdGlvbjsgLyogVGhl IGNvbXBhcmUNCj4gb3BlcmF0aW9uLg0KPiA+ICovDQo+ID4gPiArCXN0cnVjdCBydGVfZmxvd19m aWVsZF9kYXRhIGE7CQkgLyogRmllbGQgYmUgY29tcGFyZWQuICAqLw0KPiA+ID4gKwlzdHJ1Y3Qg cnRlX2Zsb3dfZmllbGRfZGF0YSBiOwkJIC8qIEZpZWxkIGFzIGNvbXBhcmF0b3IuICovDQo+ID4g Pg0KPiA+DQo+ID4gVmFyaWFibGUgbmFtZXMgJ2EnIGFuZCAnYicgYXJlIG5vdCBkZXNjcmlwdGl2 ZSBhbHRob3VnaCBpdCBtYXkgYmUgT0sgc2luY2UNCj4gdGhlcmUgaXMNCj4gPiBubyBzaWduaWZp Y2FuY2UgdG8gdGhlIHZhbHVlcywgYnV0IG90aGVyIG9wdGlvbiBjYW4gYmUgJ2ZpcnN0JyBhbmQg J3NlY29uZCcsDQo+IGJ1dA0KPiA+IG92ZXJhbGwgbm90IHN0cm9uZyBvcGluaW9uLg0KPiANCj4g WWVzLCB0aGFua3MgZm9yIHRoZSBzdWdnZXN0aW9uLCBpbiBmYWN0IHdlIGFsc28gZGlzY3Vzc2Vk IGFib3V0IHRoZSBuYW1lIGEgbG90LA0KPiBmaW5hbGx5IHdlIGNob29zZSB0aGUgd2lkZWx5IHVz ZWQgJ2EnIGFuZCAnYicNCj4gDQo+IFRoYW5rcw0KDQo=