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 35E0AA0542; Mon, 29 Aug 2022 10:20:44 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CA1CD4069D; Mon, 29 Aug 2022 10:20:43 +0200 (CEST) Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id CB5C240694 for ; Mon, 29 Aug 2022 10:20:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1661761241; x=1693297241; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=mcm+HBoFWSk7woM0WjlyNvPj/YbskEvw05LcIAxJrUQ=; b=XAQX9pgTIdPRTgX0tOfryzFmrQy8Vg+sKPXv72bea++S1UpBvy1TOVAE Z5aatOhF0838K2rpGgDUCQqRtjlvadR0kc66sCIRGT3F4arjIgCTtc0zf d929kJnGRFO3gRhH2S05lElOI7FPwkiZaxA1pXcQMlGxAxRsf984ASxGx MTt2+TKYEV0MubXT+zszRh/lB3iSYQ/xf2vAn4ItL4FnXrEmOVWdjuGey 817KwlCfbBB3VdRYOgIMybTjxcZUI8N1JAVEMj3RprmmxeQpux976G2bR Px/5SecE/ysoXwFwzwQLxmOqazZgN3JMrKyYOgXUj953IJQJJms8neuRs g==; X-IronPort-AV: E=McAfee;i="6500,9779,10453"; a="356556176" X-IronPort-AV: E=Sophos;i="5.93,272,1654585200"; d="scan'208";a="356556176" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Aug 2022 01:20:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,272,1654585200"; d="scan'208";a="672292091" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga008.fm.intel.com with ESMTP; 29 Aug 2022 01:20:39 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 29 Aug 2022 01:20:39 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 29 Aug 2022 01:20:39 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Mon, 29 Aug 2022 01:20:39 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.168) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Mon, 29 Aug 2022 01:20:38 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oWqLxnIQ1q1753reg5FCbf/ajLOVOg/1hDk3SXqeYXk++qgMQLvmyJ6HmF8GzTAn6GKH/+von8YqD3OZ1tXS+In9N1adg051ErCbveWmV4BNTN6Uvqiu/QnzsWa8BXFvmfOS+UJH/AYpkeUo8cZNfvYGpDMpqo7bt+sP6aCQipMbzGASIk0xiecpOqeTAneqFrsrRStOrh7RUyVqb3nzfKZh79VQ70L7fSXtNKdlMNIHuhSNK34OQJe+D2sJhfEPUZbViywREHiczUFZVnFH3rLusqd+u0GZd0LraIYsWFtIM3MM95Few0A4+/sZIcLLFp40eTakt4w/Ow7LACqvbg== 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=mcm+HBoFWSk7woM0WjlyNvPj/YbskEvw05LcIAxJrUQ=; b=YFdUEUSpQnBivD3/MFMERTSXR8Cq1G+htIEAGmRSUjGtTbDcR9HODSkMBee6ZGV6ojZhAqWC5OTOC0eq5uBTtgfrh3GsZJMuBCFNrJNlIL/NJMSg/87GFlRNFSGeOs73WbFeCD/3gVLtOeYZYvh4udHPhlT+Kwvd4VvDIvdAXoRcv6VasTb9CxYtb/aFrGUZkEWFf9Nnxz6UtXAXvgCfhPlShsiGOobZMsbNc4M85kM2UytLfAns2DkqwJFS6dBcHhbs/TADMaN5N0ZV8mKPMdPO0HXaA55g+aROxoZGvT481HI3fDIBepnvVitMVIkq3pks5Qs/l5KmVznciS5NIQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW4PR11MB5911.namprd11.prod.outlook.com (2603:10b6:303:16b::16) by BY5PR11MB4370.namprd11.prod.outlook.com (2603:10b6:a03:1c3::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5566.15; Mon, 29 Aug 2022 08:20:36 +0000 Received: from MW4PR11MB5911.namprd11.prod.outlook.com ([fe80::d165:971f:60ea:ab8b]) by MW4PR11MB5911.namprd11.prod.outlook.com ([fe80::d165:971f:60ea:ab8b%8]) with mapi id 15.20.5566.019; Mon, 29 Aug 2022 08:20:36 +0000 From: "Kundapura, Ganapati" To: Jerin Jacob CC: "jerinj@marvell.com" , "Jayatheerthan, Jay" , "Naga Harish K, S V" , "dev@dpdk.org" Subject: RE: [PATCH v11 1/7] eventdev/eth_rx: add adapter instance get API Thread-Topic: [PATCH v11 1/7] eventdev/eth_rx: add adapter instance get API Thread-Index: AQHYm0lKyhcRX96sckeb/KOmPHEima2p1WhAgBkRCwCAAuMqEA== Date: Mon, 29 Aug 2022 08:20:36 +0000 Message-ID: References: <20220623093036.708448-1-ganapati.kundapura@intel.com> <20220719082538.274845-1-ganapati.kundapura@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5ea049fd-0969-4fa1-b856-08da899759ce x-ms-traffictypediagnostic: BY5PR11MB4370:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XRwhvABcI3Hl5Jb62wcVELFgYZO6FdTSAJwq8ZZwo2CYUWo5jhkjLP4K+n9HPq5qyDAet9rbO9j5yv+XdN7YWANvv5n6uHb93pAoIVP72MVysM27OmedRyLj2bxc1WkETpLBSCPAgHmrLRjBc/gffZZVHnRpMUTGmzi0U6ZjApGkTV7xBukENjjT59eJhHKl2Q8bD2EIb5BnHV/j++Bq5Z2B0sTcF+T+eHiAbW08pJwlXNJj1Xqwu+t0n4k/wKMPXtDwX/cSrIo8Ln6tJHKNH2xBfToCNCLxJ3hkVpoNEmcuJRvjQLeVjdWF/BUY+4BC5n/kc15B+ILvywUZY4PpR4F+rp6A3elvSm4WfFA6dE8nLlFV5tUJDp7U5KqVqWnBIbUa5wjwSujA79vQfspoxUgqcQMJDVUdbfQREyI5oXn+nPHINlKPR8xcgVkn4jakUIqlgMkpNFv9VJ4MNIe7/icFCxD9/TF5QscYuCA69iD4yHViFeXqIwBiG6AphVlipSTmTpu1M2+PJnOqDXr97mzaJHMXJMbtOrx0xpP92+5ZdXQmU2BfPpodTae82y3AUphNU7jvbzlaGWdHaCvMVaWWILKYG4I2R+QlZ32XHoBHDZSspG72kDVks7q5JkBbs+HQtxwfTRcJNbZbOwDd8V1ARPzwkHF8XeLuJ2vtoknwOwIOXxHvoIYDMUa8eMyUTN5zvpeX2HBWqRZ+MSd73yfHhqgEgevuDBs8dVpk9FJUcJ1vtm8XsTVRbOlTHIBUU/Rh+y/okSZLPKhQc3Zp6Q== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW4PR11MB5911.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(396003)(136003)(376002)(39860400002)(366004)(346002)(316002)(478600001)(54906003)(6916009)(71200400001)(122000001)(66946007)(8676002)(66556008)(76116006)(66446008)(38100700002)(4326008)(38070700005)(82960400001)(66476007)(64756008)(41300700001)(55016003)(8936002)(52536014)(33656002)(5660300002)(30864003)(7696005)(6506007)(26005)(2906002)(55236004)(53546011)(83380400001)(186003)(9686003)(86362001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VGNUL3Y2Y2pTVmQ0ejFnK0liSDM1TWxtUUpEbkN4NEpxSmVSTitqdXJ0dk54?= =?utf-8?B?cGxkckpTQncyd3l3bVFTS3NLdFphL3daRHNMRXYvLy85WEkxazhjUkwwOXhh?= =?utf-8?B?Myt0UzFGcDFZVlNPU1RrS1N1M3l4Z0hyQzBKaFVFaXVHNlVpRDJjWmxiUVBy?= =?utf-8?B?SEtCUFNSZjREQVNjd0lwTE9QU1FFZnplc1drUWtOSXBuNXJGdmJIVkt5TUJl?= =?utf-8?B?dHJ1d1lsQTZzekRQYXM2NWNpbmxobngxV3JpVHJOY3hyWDhCLzVwQmFVTjFV?= =?utf-8?B?SWhqdUlieGYydXR3QUVUcENEcDgwRGg3K0Z2ckYwU1NBeTB4MFI1RVJjQ2V4?= =?utf-8?B?Z2dXVFhpWEpmME1kYllnN2c1MjZsOURIQUhibHpZd2tMcUMxUXI2dm1kOWZx?= =?utf-8?B?dkg0RWgwanJmOWxUZ0Q1dlFEcXh4UTFUbmZJWkV5dzd5UEdqSWFuRWovaTlo?= =?utf-8?B?eFFuSnk2QXpwOGhqeS9WVWZ4eUdLNlUxZkZ4Q1FSMExSdG50QThNRk9tZ2JP?= =?utf-8?B?MHFUdm52OS8wc3lBc240djB2R0kxekxyTHIxbUFhdUxkSytMa2RyNG83bElE?= =?utf-8?B?bXN0Mnc5QzlUb241TEU3UnFNSW45K2dWbU5hN2FTblNaaVpzRFZCdGhLZ3h3?= =?utf-8?B?MW04WFBFMTlMTFFDSTlwN0g4Tlc2MXJzSSs5NXJaWlZsaVhJSTNpZFlXb09Q?= =?utf-8?B?YkpIRFpEemVVeFFjV0ppa3VCbkRXVFI5QjlWbzZqd1BLSmJ6VUpUR3FTdXRr?= =?utf-8?B?WGtoaFI2NXhZUWx5QjM4WUFEY0UwZEhvdlVzcG1ad01lWE9TK3Rrc2dNNUhy?= =?utf-8?B?L05rdnNKdDBiMmk2YVNha1NhakNMemxtdHVvTVhqSzh4anJGdHhIQU9keTBT?= =?utf-8?B?RUJzUlNaV215TktpVWtmZHQxanlyZGxzckpNZkpNMFZMOGtSbDNtVExyVm5r?= =?utf-8?B?S3lyOTV3UVBsQW5wMDMzcmkzZy9KMnpYV2ErcnpkZ1NGVFdYaGtnWkx2MFR3?= =?utf-8?B?TzgzaXN6NDF6Y29Ra1FtMDFxZE9weVJ6TEpPcG1EeXRJWWwvSUhjMWZ6ODlX?= =?utf-8?B?RnplemlScUY1Ylc2TVY0bU02aTFRd2gzRFk2MjU0MVA4d0tOdFV3Zm5BUTJy?= =?utf-8?B?MWxJUWJTQ1JneWlsczU1Ty9vS05aWElKMWNSTXFXSnNUbEwrdmZIT3l2dGdE?= =?utf-8?B?MkM4WkJ1TzJ2Ym1qOGtvSW1OQkZKdVFadk9TS2wyTmhMNjErODU4WE5FYXQ2?= =?utf-8?B?NDBzSHd5eUVOTnVTTEN4NE1NNFQ5bEhENmlLaklLY213ZjdTQ0FTWnZjODRk?= =?utf-8?B?ZHRuVjAwUkdXY0lYSThwYXdtL3BHTnk5V3BUSk94ckxLZExXcHg3YWpRU2g3?= =?utf-8?B?QlMwdnpQYS9RUWU1bkVsOTMvcDBPWU5tYkNtcjdwQzdUYm9ldnQrSU12djdQ?= =?utf-8?B?V2hja28rZTZ4QXpyNS8wby85Z3lOcTFFcEpNM3JKaFZPdTZxMkVqd2pYb2ZP?= =?utf-8?B?QlRCRXUvanNrWmJ5cDI1eGRXR3hKR1hDdmdBMUE2aGVYcWZMaGxDcTM3MkEz?= =?utf-8?B?YzB2bXBMRnB6NlhVZlhBWWpKOTl6SnZoMXd0UTVmL05KdWZXbkN5WEdKVXFz?= =?utf-8?B?QWNmWFc4b3ZlZzBkK2NyaG9MQ09Kc2t4dzFDRjQvbVYrNG9KR1p2aG5Hdlll?= =?utf-8?B?WnZ4ZVlLcGlOQktMNVQrb3l4b1kyK3FVWlA4YlVzSk90VUlDKzVYeE53aTR1?= =?utf-8?B?aXFlaDlaalhGTmJ0MmtOK29yRGw1RlBSV281eFlMVlBHUXZUaTNVNzdxRjhK?= =?utf-8?B?QTZVM082R0wzallieCs3bjgyUE9NMlc1RmNaZkREQ2pIcnh4Ry9VcXU4cnNC?= =?utf-8?B?QjVSR3hsQlFZTXRIZlp2RkdadW9tRnNiNjlabE9oTTRLMUtkcDJZQ0dMbEdu?= =?utf-8?B?K0wvYmVvY2dOOTlKNk5scVozOHJyVUZ0UE9tWS82eDJpWmE3dkVsR256MFgx?= =?utf-8?B?MmVNT2daR3lvMVRrclpCTHZRR2F3L3NIYytXNzRKY3BubkRKZGs1MVRVcURj?= =?utf-8?B?ZUtqLzYyZEdKSHNra3FsV24ycUVja3FabnUxQXFQV2Q5a2xhZVR1eUQxNWV0?= =?utf-8?B?SDk2ZmMvS1dJL3hGdHM1WmJVTG40N09HbCtuYlFzMEJnc2h5V3dxdVJURDFh?= =?utf-8?B?YlE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5911.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5ea049fd-0969-4fa1-b856-08da899759ce X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Aug 2022 08:20:36.5664 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ehNNb1tJ0ZU35LtMSx6T+fGdz/vkTJO9kemKM8tzlCtB/634XDdVd0JJ64hiCzKX/jJWnXbun5Gp5Fwm65nRuzEDSJGKj2q+KZRNrrwkRgQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB4370 X-OriginatorOrg: intel.com 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 SGkgSmVyaW4sDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSmVyaW4g SmFjb2IgPGplcmluamFjb2JrQGdtYWlsLmNvbT4NCj4gU2VudDogMjcgQXVndXN0IDIwMjIgMTc6 NDQNCj4gVG86IEt1bmRhcHVyYSwgR2FuYXBhdGkgPGdhbmFwYXRpLmt1bmRhcHVyYUBpbnRlbC5j b20+DQo+IENjOiBqZXJpbmpAbWFydmVsbC5jb207IEpheWF0aGVlcnRoYW4sIEpheSA8amF5Lmph eWF0aGVlcnRoYW5AaW50ZWwuY29tPjsNCj4gTmFnYSBIYXJpc2ggSywgUyBWIDxzLnYubmFnYS5o YXJpc2gua0BpbnRlbC5jb20+OyBkZXZAZHBkay5vcmcNCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2 MTEgMS83XSBldmVudGRldi9ldGhfcng6IGFkZCBhZGFwdGVyIGluc3RhbmNlIGdldCBBUEkNCj4g DQo+IE9uIFRodSwgQXVnIDExLCAyMDIyIGF0IDY6NTggUE0gS3VuZGFwdXJhLCBHYW5hcGF0aQ0K PiA8Z2FuYXBhdGkua3VuZGFwdXJhQGludGVsLmNvbT4gd3JvdGU6DQo+ID4NCj4gPiBIaSBKZXJp biwNCj4gPiAgICBDb3VsZCB5b3UgcGxlYXNlIHJldmlldyB0aGlzPw0KPiANCj4gDQo+IFNlcmll cyBsb29rcyBnb29kIHRvIG1lLiBTb21lIG1pbm9yIGNvbW1lbnRzIGJlbG93LiBXZSBjYW4gbWVy Z2UgdGhlDQo+IG5leHQgdmVyc2lvbih2MTIpLg0KPiANCj4gDQo+IDEpIFNxdWFzaCAxLzcgYW5k IDYvNw0KPiAyKSBTcXVhc2ggNC83IGFuZCA3LzcNCj4gMykgUGxlYXNlIHVwZGF0ZSBkb2MvZ3Vp ZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzExLnJzdCBmb3IgbmV3IHRoZSBBUElzLg0KPg0KUG9z dGVkIFYxMiB3aXRoIHRoZSBzdWdnZXN0ZWQgY2hhbmdlcw0KIA0KPiANCj4gDQo+IA0KPiA+DQo+ ID4gVGhhbmtzLA0KPiA+IEdhbmFwYXRpDQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+ID4gPiBGcm9tOiBHYW5hcGF0aSBLdW5kYXB1cmEgPGdhbmFwYXRpLmt1bmRhcHVy YUBpbnRlbC5jb20+DQo+ID4gPiBTZW50OiAxOSBKdWx5IDIwMjIgMTM6NTYNCj4gPiA+IFRvOiBq ZXJpbmpAbWFydmVsbC5jb207IEpheWF0aGVlcnRoYW4sIEpheQ0KPiA+ID4gPGpheS5qYXlhdGhl ZXJ0aGFuQGludGVsLmNvbT47IE5hZ2EgSGFyaXNoIEssIFMgVg0KPiA+ID4gPHMudi5uYWdhLmhh cmlzaC5rQGludGVsLmNvbT47IGRldkBkcGRrLm9yZw0KPiA+ID4gU3ViamVjdDogW1BBVENIIHYx MSAxLzddIGV2ZW50ZGV2L2V0aF9yeDogYWRkIGFkYXB0ZXIgaW5zdGFuY2UgZ2V0DQo+ID4gPiBB UEkNCj4gPiA+DQo+ID4gPiBBZGRlZCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJfaW5zdGFuY2Vf Z2V0KCkgdG8gZ2V0IGFkYXB0ZXINCj4gPiA+IGluc3RhbmNlIGlkIGZvciBzcGVjaWZpZWQgZXRo ZXJuZXQgZGV2aWNlIGlkIGFuZCByeCBxdWV1ZSBpbmRleC4NCj4gPiA+DQo+ID4gPiBTaWduZWQt b2ZmLWJ5OiBHYW5hcGF0aSBLdW5kYXB1cmEgPGdhbmFwYXRpLmt1bmRhcHVyYUBpbnRlbC5jb20+ DQo+ID4gPg0KPiA+ID4gUmV2aWV3ZWQtYnk6IE5hZ2EgSGFyaXNoIEsgUyBWIDxzLnYubmFnYS5o YXJpc2gua0BpbnRlbC5jb20+DQo+ID4gPiBBY2tlZC1ieTogSmF5IEpheWF0aGVlcnRoYW4gPGph eS5qYXlhdGhlZXJ0aGFuQGludGVsLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gdjExOg0KPiA+ID4g KiBhZGRlZCBpbnN0YW5jZV9nZXQgdW5kZXIgMjIuMTEgaW4gdmVyc2lvbi5tYXANCj4gPiA+DQo+ ID4gPiB2MTA6DQo+ID4gPiAqIEFkZCBSZXZpZXcgYW5kIEFjayB0byBzZXJpZXMNCj4gPiA+DQo+ ID4gPiB2OToNCj4gPiA+ICogQ29ycmVjdGVkIHJ0ZV9ldmVudF9ldGhfdHhfYWRhcHRlcl9pbnN0 YW5jZWdldCB0bw0KPiA+ID4gKiBydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXJfaW5zdGFuY2VfZ2V0 IGluDQo+ID4gPiBldmVudF9ldGhlcm5ldF90eF9hZGFwdGVyLnJzdA0KPiA+ID4NCj4gPiA+IHY4 Og0KPiA+ID4gKiBSZW1vdmVkIGxpbWl0cy5oIGluY2x1c2lvbg0KPiA+ID4NCj4gPiA+IHY3Og0K PiA+ID4gKiBSZW1vdmUgYWxsb2NhdGlvbiBvZiBpbnN0YW5jZSBhcnJheSBhbmQgc3RvcmFnZSBv ZiBpbnN0bmFjZSBpZA0KPiA+ID4gKiBpbiBpbnN0YW5jZSBhcnJheQ0KPiA+ID4gKiBVc2UgUngg YWRhcHRlciBpbnN0YW5jZSBkYXRhIHRvIHF1ZXJ5IGluc3RhbmNlIGlkIGZvciBzcGVjaWZpZWQN Cj4gPiA+ICogZXRoX2Rldl9pZCBhbmQgcnhfcXVldWVfaWQNCj4gPiA+DQo+ID4gPiB2NjoNCj4g PiA+ICogcnggYWRhcHRlciBjaGFuZ2VzIHJlbW92ZWQgZnJvbSBwYXRjaDQgYW5kIG1vdmVkIHRv IHBhdGNoMQ0KPiA+ID4NCj4gPiA+IHY1Og0KPiA+ID4gKiBwYXRjaCBpcyBzcGxpdCBpbnRvIHNh cGVyYXRlIHBhdGNoZXMNCj4gPiA+DQo+ID4gPiB2NDoNCj4gPiA+ICogTW92ZWQgaW5zdGFuY2Ug YXJyYXkgYWxsb2NhdGlvbiBhbmQgaW5zdGFuY2UgaWQgc3RvcmFnZQ0KPiA+ID4gICBiZWZvcmUg YWRhcHRlcidzIG5iX3F1ZXVlIHVwZGF0aW9uIGZvciBoYW5kbGluZyB0aGUNCj4gPiA+ICAgZXJy b3IgY2FzZSAgcHJvcGVybHkNCj4gPiA+DQo+ID4gPiB2MzoNCj4gPiA+ICogRml4ZWQgY2hlY2tw YXRjaCBlcnJvcg0KPiA+ID4NCj4gPiA+IHYyOg0KPiA+ID4gKiBGaXhlZCBidWlsZCBpc3N1ZXMN Cj4gPiA+ICogQWRkZWQgdGVsZW1ldHJ5IHN1cHBvcnQgZm9yIHJ0ZV9ldmVudF9ldGhfcnhfYWRh cHRlcl9pbnN0YW5jZV9nZXQNCj4gPiA+ICogYXJyYW5nZWQgZnVuY3Rpb25zIGluIGFscGhhYmV0 aWNhbCBvcmRlciBpbiB2ZXJzaW9uLm1hcA0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9saWIv ZXZlbnRkZXYvZXZlbnRkZXZfcG1kLmgNCj4gPiA+IGIvbGliL2V2ZW50ZGV2L2V2ZW50ZGV2X3Bt ZC5oIGluZGV4IDY5NDAyNjYuLmM1OGJhMDUgMTAwNjQ0DQo+ID4gPiAtLS0gYS9saWIvZXZlbnRk ZXYvZXZlbnRkZXZfcG1kLmgNCj4gPiA+ICsrKyBiL2xpYi9ldmVudGRldi9ldmVudGRldl9wbWQu aA0KPiA+ID4gQEAgLTg4OCw2ICs4ODgsMjYgQEAgdHlwZWRlZiBpbnQNCj4gPiA+ICgqZXZlbnRk ZXZfZXRoX3J4X2FkYXB0ZXJfdmVjdG9yX2xpbWl0c19nZXRfdCkoDQo+ID4gPiAgICAgICBjb25z dCBzdHJ1Y3QgcnRlX2V2ZW50ZGV2ICpkZXYsIGNvbnN0IHN0cnVjdCBydGVfZXRoX2RldiAqZXRo X2RldiwNCj4gPiA+ICAgICAgIHN0cnVjdCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJfdmVjdG9y X2xpbWl0cyAqbGltaXRzKTsNCj4gPiA+DQo+ID4gPiArLyoqDQo+ID4gPiArICogR2V0IFJ4IGFk YXB0ZXIgaW5zdGFuY2UgaWQgZm9yIFJ4IHF1ZXVlDQo+ID4gPiArICoNCj4gPiA+ICsgKiBAcGFy YW0gZXRoX2Rldl9pZA0KPiA+ID4gKyAqICBQb3J0IGlkZW50aWZpZXIgb2YgZXRoZXJuZXQgZGV2 aWNlDQo+ID4gPiArICoNCj4gPiA+ICsgKiBAcGFyYW0gcnhfcXVldWVfaWQNCj4gPiA+ICsgKiAg RXRoZXJuZXQgZGV2aWNlIFJ4IHF1ZXVlIGluZGV4DQo+ID4gPiArICoNCj4gPiA+ICsgKiBAcGFy YW1bb3V0XSByeGFfaW5zdF9pZA0KPiA+ID4gKyAqICBQb2ludGVyIHRvIFJ4IGFkYXB0ZXIgaW5z dGFuY2UgaWRlbnRpZmllci4NCj4gPiA+ICsgKiAgQ29udGFpbnMgdmFsaWQgUnggYWRhcHRlciBp bnN0YW5jZSBpZCB3aGVuIHJldHVybiB2YWx1ZSBpcyAwDQo+ID4gPiArICoNCj4gPiA+ICsgKiBA cmV0dXJuDQo+ID4gPiArICogICAtICAwOiBTdWNjZXNzDQo+ID4gPiArICogICAtIDwwOiBFcnJv ciBjb2RlIG9uIGZhaWx1cmUNCj4gPiA+ICsgKi8NCj4gPiA+ICt0eXBlZGVmIGludCAoKmV2ZW50 ZGV2X2V0aF9yeF9hZGFwdGVyX2luc3RhbmNlX2dldF90KQ0KPiA+ID4gKyAgICAgKHVpbnQxNl90 IGV0aF9kZXZfaWQsIHVpbnQxNl90IHJ4X3F1ZXVlX2lkLCB1aW50OF90DQo+ID4gPiArKnJ4YV9p bnN0X2lkKTsNCj4gPiA+ICsNCj4gPiA+ICB0eXBlZGVmIHVpbnQzMl90IHJ0ZV9ldmVudF9wbWRf c2VsZnRlc3Rfc2Vxbl90OyAgZXh0ZXJuIGludA0KPiA+ID4gcnRlX2V2ZW50X3BtZF9zZWxmdGVz dF9zZXFuX2R5bmZpZWxkX29mZnNldDsNCj4gPiA+DQo+ID4gPiBAQCAtMTMyMSw2ICsxMzQxLDgg QEAgc3RydWN0IGV2ZW50ZGV2X29wcyB7DQo+ID4gPiAgICAgICBldmVudGRldl9ldGhfcnhfYWRh cHRlcl92ZWN0b3JfbGltaXRzX2dldF90DQo+ID4gPiAgICAgICAgICAgICAgIGV0aF9yeF9hZGFw dGVyX3ZlY3Rvcl9saW1pdHNfZ2V0Ow0KPiA+ID4gICAgICAgLyoqPCBHZXQgZXZlbnQgdmVjdG9y IGxpbWl0cyBmb3IgdGhlIFJ4IGFkYXB0ZXIgKi8NCj4gPiA+ICsgICAgIGV2ZW50ZGV2X2V0aF9y eF9hZGFwdGVyX2luc3RhbmNlX2dldF90DQo+ID4gPiBldGhfcnhfYWRhcHRlcl9pbnN0YW5jZV9n ZXQ7DQo+ID4gPiArICAgICAvKio8IEdldCBSeCBhZGFwdGVyIGluc3RhbmNlIGlkIGZvciBSeCBx dWV1ZSAqLw0KPiA+ID4NCj4gPiA+ICAgICAgIGV2ZW50ZGV2X3RpbWVyX2FkYXB0ZXJfY2Fwc19n ZXRfdCB0aW1lcl9hZGFwdGVyX2NhcHNfZ2V0Ow0KPiA+ID4gICAgICAgLyoqPCBHZXQgdGltZXIg YWRhcHRlciBjYXBhYmlsaXRpZXMgKi8gZGlmZiAtLWdpdA0KPiA+ID4gYS9saWIvZXZlbnRkZXYv cnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyLmMNCj4gPiA+IGIvbGliL2V2ZW50ZGV2L3J0ZV9ldmVu dF9ldGhfcnhfYWRhcHRlci5jDQo+ID4gPiBpbmRleCBiZjg3NDFkLi5hYmFiZTEzIDEwMDY0NA0K PiA+ID4gLS0tIGEvbGliL2V2ZW50ZGV2L3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5jDQo+ID4g PiArKysgYi9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyLmMNCj4gPiA+IEBA IC0xNDE1LDE1ICsxNDE1LDEzIEBAIHJ4YV9zZXJ2aWNlX2Z1bmModm9pZCAqYXJncykNCj4gPiA+ ICAgICAgIHJldHVybiAwOw0KPiA+ID4gIH0NCj4gPiA+DQo+ID4gPiAtc3RhdGljIGludA0KPiA+ ID4gLXJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9pbml0KHZvaWQpDQo+ID4gPiArc3RhdGljIHZv aWQgKg0KPiA+ID4gK3J4YV9tZW16b25lX2FycmF5X2dldChjb25zdCBjaGFyICpuYW1lLCB1bnNp Z25lZCBpbnQgZWx0X3NpemUsIGludA0KPiA+ID4gK25iX2VsZW1zKQ0KPiA+ID4gIHsNCj4gPiA+ IC0gICAgIGNvbnN0IGNoYXIgKm5hbWUgPSBSWEFfQURBUFRFUl9BUlJBWTsNCj4gPiA+ICAgICAg IGNvbnN0IHN0cnVjdCBydGVfbWVtem9uZSAqbXo7DQo+ID4gPiAgICAgICB1bnNpZ25lZCBpbnQg c3o7DQo+ID4gPg0KPiA+ID4gLSAgICAgc3ogPSBzaXplb2YoKmV2ZW50X2V0aF9yeF9hZGFwdGVy KSAqDQo+ID4gPiAtICAgICAgICAgUlRFX0VWRU5UX0VUSF9SWF9BREFQVEVSX01BWF9JTlNUQU5D RTsNCj4gPiA+ICsgICAgIHN6ID0gZWx0X3NpemUgKiBuYl9lbGVtczsNCj4gPiA+ICAgICAgIHN6 ID0gUlRFX0FMSUdOKHN6LCBSVEVfQ0FDSEVfTElORV9TSVpFKTsNCj4gPiA+DQo+ID4gPiAgICAg ICBteiA9IHJ0ZV9tZW16b25lX2xvb2t1cChuYW1lKTsgQEAgLTE0MzEsMTMgKzE0MjksMzQgQEAN Cj4gPiA+IHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9pbml0KHZvaWQpDQo+ID4gPiAgICAgICAg ICAgICAgIG16ID0gcnRlX21lbXpvbmVfcmVzZXJ2ZV9hbGlnbmVkKG5hbWUsIHN6LA0KPiA+ID4g cnRlX3NvY2tldF9pZCgpLCAwLA0KPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBSVEVfQ0FDSEVfTElORV9TSVpFKTsNCj4gPiA+ICAgICAgICAgICAg ICAgaWYgKG16ID09IE5VTEwpIHsNCj4gPiA+IC0gICAgICAgICAgICAgICAgICAgICBSVEVfRURF Vl9MT0dfRVJSKCJmYWlsZWQgdG8gcmVzZXJ2ZSBtZW16b25lIGVycg0KPiA+ID4gPSAlIg0KPiA+ ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUklkMzIsIHJ0ZV9lcnJu byk7DQo+ID4gPiAtICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1ydGVfZXJybm87DQo+ID4g PiArICAgICAgICAgICAgICAgICAgICAgUlRFX0VERVZfTE9HX0VSUigiZmFpbGVkIHRvIHJlc2Vy dmUgbWVtem9uZSINCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICIgbmFtZSA9ICVzLCBlcnIgPSAlIg0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUFJJZDMyLCBuYW1lLCBydGVfZXJybm8pOw0KPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgIHJldHVybiBOVUxMOw0KPiA+ID4gICAgICAgICAgICAgICB9DQo+ID4gPiAgICAg ICB9DQo+ID4gPg0KPiA+ID4gLSAgICAgZXZlbnRfZXRoX3J4X2FkYXB0ZXIgPSBtei0+YWRkcjsN Cj4gPiA+ICsgICAgIHJldHVybiBtei0+YWRkcjsNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiAr c3RhdGljIGludA0KPiA+ID4gK3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9pbml0KHZvaWQpDQo+ ID4gPiArew0KPiA+ID4gKyAgICAgdWludDhfdCBpOw0KPiA+ID4gKw0KPiA+ID4gKyAgICAgaWYg KGV2ZW50X2V0aF9yeF9hZGFwdGVyID09IE5VTEwpIHsNCj4gPiA+ICsgICAgICAgICAgICAgZXZl bnRfZXRoX3J4X2FkYXB0ZXIgPQ0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIHJ4YV9tZW16 b25lX2FycmF5X2dldChSWEFfQURBUFRFUl9BUlJBWSwNCj4gPiA+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKCpldmVudF9ldGhfcnhfYWRhcHRlciksDQo+ID4g PiArDQo+ID4gPiAgICAgICBSVEVfRVZFTlRfRVRIX1JYX0FEQVBURVJfTUFYX0lOU1RBTkNFKTsN Cj4gPiA+ICsgICAgICAgICAgICAgaWYgKGV2ZW50X2V0aF9yeF9hZGFwdGVyID09IE5VTEwpDQo+ ID4gPiArICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07DQo+ID4gPiArDQo+ID4g PiArICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPA0KPiA+ID4gUlRFX0VWRU5UX0VUSF9SWF9B REFQVEVSX01BWF9JTlNUQU5DRTsgaSsrKQ0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIGV2 ZW50X2V0aF9yeF9hZGFwdGVyW2ldID0gTlVMTDsNCj4gPiA+ICsNCj4gPiA+ICsgICAgIH0NCj4g PiA+ICsNCj4gPiA+ICAgICAgIHJldHVybiAwOw0KPiA+ID4gIH0NCj4gPiA+DQo+ID4gPiBAQCAt MTQ1MCw2ICsxNDY5LDcgQEAgcnhhX21lbXpvbmVfbG9va3VwKHZvaWQpDQo+ID4gPiAgICAgICAg ICAgICAgIG16ID0gcnRlX21lbXpvbmVfbG9va3VwKFJYQV9BREFQVEVSX0FSUkFZKTsNCj4gPiA+ ICAgICAgICAgICAgICAgaWYgKG16ID09IE5VTEwpDQo+ID4gPiAgICAgICAgICAgICAgICAgICAg ICAgcmV0dXJuIC1FTk9NRU07DQo+ID4gPiArDQo+ID4gPiAgICAgICAgICAgICAgIGV2ZW50X2V0 aF9yeF9hZGFwdGVyID0gbXotPmFkZHI7DQo+ID4gPiAgICAgICB9DQo+ID4gPg0KPiA+ID4gQEAg LTE5NTEsNyArMTk3MSw2IEBAIHJ4YV9zd19kZWwoc3RydWN0IGV2ZW50X2V0aF9yeF9hZGFwdGVy DQo+ID4gPiAqcnhfYWRhcHRlciwNCj4gPiA+ICAgICAgIGludCBpbnRycTsNCj4gPiA+ICAgICAg IGludCBzaW50cnE7DQo+ID4gPg0KPiA+ID4gLQ0KPiA+ID4gICAgICAgaWYgKHJ4X2FkYXB0ZXIt Pm5iX3F1ZXVlcyA9PSAwKQ0KPiA+ID4gICAgICAgICAgICAgICByZXR1cm47DQo+ID4gPg0KPiA+ ID4gQEAgLTI1MjQsNiArMjU0Myw5IEBAIHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9mcmVlKHVp bnQ4X3QgaWQpICB7DQo+ID4gPiAgICAgICBzdHJ1Y3QgZXZlbnRfZXRoX3J4X2FkYXB0ZXIgKnJ4 X2FkYXB0ZXI7DQo+ID4gPg0KPiA+ID4gKyAgICAgaWYgKHJ4YV9tZW16b25lX2xvb2t1cCgpKQ0K PiA+ID4gKyAgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsNCj4gPiA+ICsNCj4gPiA+ICAgICAg IFJURV9FVkVOVF9FVEhfUlhfQURBUFRFUl9JRF9WQUxJRF9PUl9FUlJfUkVUKGlkLCAtIEVJTlZB TCk7DQo+ID4gPg0KPiA+ID4gICAgICAgcnhfYWRhcHRlciA9IHJ4YV9pZF90b19hZGFwdGVyKGlk KTsgQEAgLTI1NjEsNiArMjU4Myw5IEBADQo+ID4gPiBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJf cXVldWVfYWRkKHVpbnQ4X3QgaWQsDQo+ID4gPiAgICAgICBzdHJ1Y3QgZXRoX2RldmljZV9pbmZv ICpkZXZfaW5mbzsNCj4gPiA+ICAgICAgIHN0cnVjdCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJf dmVjdG9yX2xpbWl0cyBsaW1pdHM7DQo+ID4gPg0KPiA+ID4gKyAgICAgaWYgKHJ4YV9tZW16b25l X2xvb2t1cCgpKQ0KPiA+ID4gKyAgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsNCj4gPiA+ICsN Cj4gPiA+ICAgICAgIFJURV9FVkVOVF9FVEhfUlhfQURBUFRFUl9JRF9WQUxJRF9PUl9FUlJfUkVU KGlkLCAtIEVJTlZBTCk7DQo+ID4gPiAgICAgICBSVEVfRVRIX1ZBTElEX1BPUlRJRF9PUl9FUlJf UkVUKGV0aF9kZXZfaWQsIC1FSU5WQUwpOw0KPiA+ID4NCj4gPiA+IEBAIC0yNzI2LDYgKzI3NTEs OSBAQCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJfcXVldWVfZGVsKHVpbnQ4X3QNCj4gaWQsDQo+ ID4gPiB1aW50MTZfdCBldGhfZGV2X2lkLA0KPiA+ID4gICAgICAgdWludDMyX3QgKnJ4X3dyciA9 IE5VTEw7DQo+ID4gPiAgICAgICBpbnQgbnVtX2ludHJfdmVjOw0KPiA+ID4NCj4gPiA+ICsgICAg IGlmIChyeGFfbWVtem9uZV9sb29rdXAoKSkNCj4gPiA+ICsgICAgICAgICAgICAgcmV0dXJuIC1F Tk9NRU07DQo+ID4gPiArDQo+ID4gPiAgICAgICBSVEVfRVZFTlRfRVRIX1JYX0FEQVBURVJfSURf VkFMSURfT1JfRVJSX1JFVChpZCwgLSBFSU5WQUwpOw0KPiA+ID4gICAgICAgUlRFX0VUSF9WQUxJ RF9QT1JUSURfT1JfRVJSX1JFVChldGhfZGV2X2lkLCAtRUlOVkFMKTsNCj4gPiA+DQo+ID4gPiBA QCAtMjgzMiw2ICsyODYwLDcgQEAgcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX2RlbCh1 aW50OF90DQo+IGlkLA0KPiA+ID4gdWludDE2X3QgZXRoX2Rldl9pZCwNCj4gPiA+DQo+ID4gPiAg ICAgICBydGVfZXZlbnRkZXZfdHJhY2VfZXRoX3J4X2FkYXB0ZXJfcXVldWVfZGVsKGlkLCBldGhf ZGV2X2lkLA0KPiA+ID4gICAgICAgICAgICAgICByeF9xdWV1ZV9pZCwgcmV0KTsNCj4gPiA+ICsN Cj4gPiA+ICAgICAgIHJldHVybiByZXQ7DQo+ID4gPiAgfQ0KPiA+ID4NCj4gPiA+IEBAIC0zMjg2 LDYgKzMzMTUsOTcgQEANCj4gPiA+IHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9xdWV1ZV9jb25m X2dldCh1aW50OF90IGlkLA0KPiA+ID4gICAgICAgcmV0dXJuIDA7DQo+ID4gPiAgfQ0KPiA+ID4N Cj4gPiA+ICtzdGF0aWMgaW50DQo+ID4gPiArcnhhX2lzX3F1ZXVlX2FkZGVkKHN0cnVjdCBldmVu dF9ldGhfcnhfYWRhcHRlciAqcnhfYWRhcHRlciwNCj4gPiA+ICsgICAgICAgICAgICAgICAgdWlu dDE2X3QgZXRoX2Rldl9pZCwNCj4gPiA+ICsgICAgICAgICAgICAgICAgdWludDE2X3QgcnhfcXVl dWVfaWQpIHsNCj4gPiA+ICsgICAgIHN0cnVjdCBldGhfZGV2aWNlX2luZm8gKmRldl9pbmZvOw0K PiA+ID4gKyAgICAgc3RydWN0IGV0aF9yeF9xdWV1ZV9pbmZvICpxdWV1ZV9pbmZvOw0KPiA+ID4g Kw0KPiA+ID4gKyAgICAgaWYgKCFyeF9hZGFwdGVyLT5ldGhfZGV2aWNlcykNCj4gPiA+ICsgICAg ICAgICAgICAgcmV0dXJuIDA7DQo+ID4gPiArDQo+ID4gPiArICAgICBkZXZfaW5mbyA9ICZyeF9h ZGFwdGVyLT5ldGhfZGV2aWNlc1tldGhfZGV2X2lkXTsNCj4gPiA+ICsgICAgIGlmICghZGV2X2lu Zm8gfHwgIWRldl9pbmZvLT5yeF9xdWV1ZSkNCj4gPiA+ICsgICAgICAgICAgICAgcmV0dXJuIDA7 DQo+ID4gPiArDQo+ID4gPiArICAgICBxdWV1ZV9pbmZvID0gJmRldl9pbmZvLT5yeF9xdWV1ZVty eF9xdWV1ZV9pZF07DQo+ID4gPiArDQo+ID4gPiArICAgICByZXR1cm4gcXVldWVfaW5mbyAmJiBx dWV1ZV9pbmZvLT5xdWV1ZV9lbmFibGVkOyB9DQo+ID4gPiArDQo+ID4gPiArI2RlZmluZSByeGFf ZXZkZXYocnhfYWRhcHRlcikNCj4gPiA+ICsoJnJ0ZV9ldmVudGRldnNbKHJ4X2FkYXB0ZXIpLT5l dmVudGRldl9pZF0pDQo+ID4gPiArDQo+ID4gPiArI2RlZmluZSByeGFfZGV2X2luc3RhbmNlX2dl dChyeF9hZGFwdGVyKSBcDQo+ID4gPiArICAgICAgICAgICAgIHJ4YV9ldmRldigocnhfYWRhcHRl cikpLT5kZXZfb3BzLQ0KPiA+ID4gPmV0aF9yeF9hZGFwdGVyX2luc3RhbmNlX2dldA0KPiA+ID4g Kw0KPiA+ID4gK2ludA0KPiA+ID4gK3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9pbnN0YW5jZV9n ZXQodWludDE2X3QgZXRoX2Rldl9pZCwNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQxNl90IHJ4X3F1ZXVlX2lkLA0KPiA+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDhfdCAqcnhhX2luc3RfaWQpIHsNCj4gPiA+ICsgICAgIHVp bnQ4X3QgaWQ7DQo+ID4gPiArICAgICBpbnQgcmV0ID0gLUVJTlZBTDsNCj4gPiA+ICsgICAgIHVp bnQzMl90IGNhcHM7DQo+ID4gPiArICAgICBzdHJ1Y3QgZXZlbnRfZXRoX3J4X2FkYXB0ZXIgKnJ4 X2FkYXB0ZXI7DQo+ID4gPiArDQo+ID4gPiArICAgICBpZiAocnhhX21lbXpvbmVfbG9va3VwKCkp DQo+ID4gPiArICAgICAgICAgICAgIHJldHVybiAtRU5PTUVNOw0KPiA+ID4gKw0KPiA+ID4gKyAg ICAgaWYgKGV0aF9kZXZfaWQgPj0gcnRlX2V0aF9kZXZfY291bnRfYXZhaWwoKSkgew0KPiA+ID4g KyAgICAgICAgICAgICBSVEVfRURFVl9MT0dfRVJSKCJJbnZhbGlkIGV0aGVybmV0IHBvcnQgaWQg JXUiLA0KPiA+ID4gZXRoX2Rldl9pZCk7DQo+ID4gPiArICAgICAgICAgICAgIHJldHVybiAtRUlO VkFMOw0KPiA+ID4gKyAgICAgfQ0KPiA+ID4gKw0KPiA+ID4gKyAgICAgaWYgKHJ4X3F1ZXVlX2lk ID49IHJ0ZV9ldGhfZGV2aWNlc1tldGhfZGV2X2lkXS5kYXRhLQ0KPiA+ID4gPm5iX3J4X3F1ZXVl cykgew0KPiA+ID4gKyAgICAgICAgICAgICBSVEVfRURFVl9MT0dfRVJSKCJJbnZhbGlkIFJ4IHF1 ZXVlICV1IiwgcnhfcXVldWVfaWQpOw0KPiA+ID4gKyAgICAgICAgICAgICByZXR1cm4gLUVJTlZB TDsNCj4gPiA+ICsgICAgIH0NCj4gPiA+ICsNCj4gPiA+ICsgICAgIGlmIChyeGFfaW5zdF9pZCA9 PSBOVUxMKSB7DQo+ID4gPiArICAgICAgICAgICAgIFJURV9FREVWX0xPR19FUlIoInJ4YV9pbnN0 X2lkIGNhbm5vdCBiZSBOVUxMIik7DQo+ID4gPiArICAgICAgICAgICAgIHJldHVybiAtRUlOVkFM Ow0KPiA+ID4gKyAgICAgfQ0KPiA+ID4gKw0KPiA+ID4gKyAgICAgLyogSXRlcmF0ZSB0aHJvdWdo IGFsbCBhZGFwdGVyIGluc3RhbmNlcyAqLw0KPiA+ID4gKyAgICAgZm9yIChpZCA9IDA7IGlkIDwg UlRFX0VWRU5UX0VUSF9SWF9BREFQVEVSX01BWF9JTlNUQU5DRTsNCj4gPiA+IGlkKyspIHsNCj4g PiA+ICsgICAgICAgICAgICAgcnhfYWRhcHRlciA9IHJ4YV9pZF90b19hZGFwdGVyKGlkKTsNCj4g PiA+ICsgICAgICAgICAgICAgaWYgKCFyeF9hZGFwdGVyKQ0KPiA+ID4gKyAgICAgICAgICAgICAg ICAgICAgIGNvbnRpbnVlOw0KPiA+ID4gKw0KPiA+ID4gKyAgICAgICAgICAgICBpZiAocnhhX2lz X3F1ZXVlX2FkZGVkKHJ4X2FkYXB0ZXIsIGV0aF9kZXZfaWQsDQo+ID4gPiByeF9xdWV1ZV9pZCkp IHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAqcnhhX2luc3RfaWQgPSByeF9hZGFwdGVy LT5pZDsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICByZXQgPSAwOw0KPiA+ID4gKyAgICAg ICAgICAgICB9DQo+ID4gPiArDQo+ID4gPiArICAgICAgICAgICAgIC8qIFJ4IGFkYXB0ZXIgaW50 ZXJuYWxseSBtYWluYXRhaW5zIHF1ZXVlIGluZm9ybWF0aW9uDQo+ID4gPiArICAgICAgICAgICAg ICAqIGZvciBib3RoIGludGVybmFsIHBvcnQgYW5kIERQREsgc2VydmljZSBwb3J0Lg0KPiA+ID4g KyAgICAgICAgICAgICAgKiBFdmVudGRldiBQTUQgY2FsbGJhY2sgaXMgY2FsbGVkIGZvciBmdXR1 cmUgcHJvb2Ygb25seSBhbmQNCj4gPiA+ICsgICAgICAgICAgICAgICogb3ZlcnJpZGVzIHRoZSBh Ym92ZSByZXR1cm4gdmFsdWUgaWYgZGVmaW5lZC4NCj4gPiA+ICsgICAgICAgICAgICAgICovDQo+ ID4gPiArICAgICAgICAgICAgIGNhcHMgPSAwOw0KPiA+ID4gKyAgICAgICAgICAgICBpZiAoIXJ0 ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9jYXBzX2dldChyeF9hZGFwdGVyLQ0KPiA+ID4gPmV2ZW50 ZGV2X2lkLA0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGV0aF9kZXZfaWQsDQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJmNhcHMpKSB7DQo+ID4gPiArICAgICAgICAgICAgICAg ICAgICAgaWYgKGNhcHMgJg0KPiA+ID4gUlRFX0VWRU5UX0VUSF9SWF9BREFQVEVSX0NBUF9JTlRF Uk5BTF9QT1JUKSB7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXQgPSBy eGFfZGV2X2luc3RhbmNlX2dldChyeF9hZGFwdGVyKSA/DQo+ID4gPiArDQo+ID4gPiAgICAgICBy eGFfZGV2X2luc3RhbmNlX2dldChyeF9hZGFwdGVyKQ0KPiA+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXRoX2Rldl9pZCwN Cj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJ4X3F1ZXVlX2lkLA0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnhhX2luc3RfaWQpDQo+ID4g PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6 IC1FSU5WQUw7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+ID4gKyAgICAgICAg ICAgICB9DQo+ID4gPiArDQo+ID4gPiArICAgICAgICAgICAgIC8qIHJldHVybiBpZiBlbnRyeSBm b3VuZCAqLw0KPiA+ID4gKyAgICAgICAgICAgICBpZiAocmV0ID09IDApDQo+ID4gPiArICAgICAg ICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCj4gPiA+ICsgICAgIH0NCj4gPiA+ICsNCj4gPiA+ ICsgICAgIHJldHVybiAtRUlOVkFMOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICAjZGVmaW5l IFJYQV9BRERfRElDVChzdGF0cywgcykgcnRlX3RlbF9kYXRhX2FkZF9kaWN0X3U2NChkLCAjcywN Cj4gPiA+IHN0YXRzLnMpDQo+ID4gPg0KPiA+ID4gIHN0YXRpYyBpbnQNCj4gPiA+IGRpZmYgLS1n aXQgYS9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyLmgNCj4gPiA+IGIvbGli L2V2ZW50ZGV2L3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5oDQo+ID4gPiBpbmRleCAzNjA4YTdi Li5hMzMxM2M4IDEwMDY0NA0KPiA+ID4gLS0tIGEvbGliL2V2ZW50ZGV2L3J0ZV9ldmVudF9ldGhf cnhfYWRhcHRlci5oDQo+ID4gPiArKysgYi9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF9yeF9h ZGFwdGVyLmgNCj4gPiA+IEBAIC0zOCw2ICszOCw3IEBADQo+ID4gPiAgICogIC0gcnRlX2V2ZW50 X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX3N0YXRzX2dldCgpDQo+ID4gPiAgICogIC0gcnRlX2V2ZW50 X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX3N0YXRzX3Jlc2V0KCkNCj4gPiA+ICAgKiAgLSBydGVfZXZl bnRfZXRoX3J4X2FkYXB0ZXJfZXZlbnRfcG9ydF9nZXQoKQ0KPiA+ID4gKyAqICAtIHJ0ZV9ldmVu dF9ldGhfcnhfYWRhcHRlcl9pbnN0YW5jZV9nZXQoKQ0KPiA+ID4gICAqDQo+ID4gPiAgICogVGhl IGFwcGxpY2F0aW9uIGNyZWF0ZXMgYW4gZXRoZXJuZXQgdG8gZXZlbnQgYWRhcHRlciB1c2luZw0K PiA+ID4gICAqIHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9jcmVhdGVfZXh0KCkgb3INCj4gPiA+ IHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9jcmVhdGUoKSBAQCAtNzA0LDYgKzcwNSwyOSBAQA0K PiA+ID4gX19ydGVfZXhwZXJpbWVudGFsICBpbnQNCj4gPiA+IHJ0ZV9ldmVudF9ldGhfcnhfYWRh cHRlcl9ldmVudF9wb3J0X2dldCh1aW50OF90IGlkLCB1aW50OF90DQo+ID4gPiAqZXZlbnRfcG9y dF9pZCk7DQo+ID4gPg0KPiA+ID4gKy8qKg0KPiA+ID4gKyAqIEdldCBSWCBhZGFwdGVyIGluc3Rh bmNlIElEIGZvciBhIFJYIHF1ZXVlDQo+ID4gPiArICoNCj4gPiA+ICsgKiBAcGFyYW0gZXRoX2Rl dl9pZA0KPiA+ID4gKyAqICBQb3J0IGlkZW50aWZpZXIgb2YgRXRoZXJuZXQgZGV2aWNlLg0KPiA+ ID4gKyAqDQo+ID4gPiArICogQHBhcmFtIHJ4X3F1ZXVlX2lkDQo+ID4gPiArICogIEV0aGVybmV0 IGRldmljZSByZWNlaXZlIHF1ZXVlIGluZGV4Lg0KPiA+ID4gKyAqDQo+ID4gPiArICogQHBhcmFt W291dF0gcnhhX2luc3RfaWQNCj4gPiA+ICsgKiAgUG9pbnRlciB0byBzdG9yZSBSWCBhZGFwdGVy IGluc3RhbmNlIGlkZW50aWZpZXIuDQo+ID4gPiArICogIENvbnRhaW5zIHZhbGlkIFJ4IGFkYXB0 ZXIgaW5zdGFuY2UgaWQgd2hlbiByZXR1cm4gdmFsdWUgaXMgMA0KPiA+ID4gKyAqDQo+ID4gPiAr ICogQHJldHVybg0KPiA+ID4gKyAqICAtICAwOiBTdWNjZXNzDQo+ID4gPiArICogIC0gPDA6IEVy cm9yIGNvZGUgb24gZmFpbHVyZQ0KPiA+ID4gKyAqLw0KPiA+ID4gK19fcnRlX2V4cGVyaW1lbnRh bA0KPiA+ID4gK2ludA0KPiA+ID4gK3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9pbnN0YW5jZV9n ZXQodWludDE2X3QgZXRoX2Rldl9pZCwNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQxNl90IHJ4X3F1ZXVlX2lkLA0KPiA+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDhfdCAqcnhhX2luc3RfaWQpOw0KPiA+ID4gKw0KPiA+ID4g ICNpZmRlZiBfX2NwbHVzcGx1cw0KPiA+ID4gIH0NCj4gPiA+ICAjZW5kaWYNCj4gPiA+IGRpZmYg LS1naXQgYS9saWIvZXZlbnRkZXYvdmVyc2lvbi5tYXAgYi9saWIvZXZlbnRkZXYvdmVyc2lvbi5t YXANCj4gPiA+IGluZGV4DQo+ID4gPiA4ODZlMmVjLi5kYTA3YTIzIDEwMDY0NA0KPiA+ID4gLS0t IGEvbGliL2V2ZW50ZGV2L3ZlcnNpb24ubWFwDQo+ID4gPiArKysgYi9saWIvZXZlbnRkZXYvdmVy c2lvbi5tYXANCj4gPiA+IEBAIC0xMTIsNiArMTEyLDkgQEAgRVhQRVJJTUVOVEFMIHsNCj4gPiA+ ICAgICAgICMgYWRkZWQgaW4gMjIuMDcNCj4gPiA+ICAgICAgIHJ0ZV9ldmVudF9wb3J0X3F1aWVz Y2U7DQo+ID4gPiAgICAgICBydGVfZXZlbnRfcXVldWVfYXR0cl9zZXQ7DQo+ID4gPiArDQo+ID4g PiArICAgICAjIGFkZGVkIGluIDIyLjExDQo+ID4gPiArICAgICBydGVfZXZlbnRfZXRoX3J4X2Fk YXB0ZXJfaW5zdGFuY2VfZ2V0Ow0KPiA+ID4gIH07DQo+ID4gPg0KPiA+ID4gIElOVEVSTkFMIHsN Cj4gPiA+IC0tDQo+ID4gPiAyLjYuNA0KPiA+DQo=