From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id A8E792A7 for ; Sat, 3 Mar 2018 23:42:54 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 03 Mar 2018 14:42:52 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,420,1515484800"; d="scan'208";a="208645326" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by fmsmga006.fm.intel.com with ESMTP; 03 Mar 2018 14:42:51 -0800 Received: from fmsmsx116.amr.corp.intel.com (10.18.116.20) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.319.2; Sat, 3 Mar 2018 14:42:51 -0800 Received: from fmsmsx108.amr.corp.intel.com ([169.254.9.125]) by fmsmsx116.amr.corp.intel.com ([169.254.2.104]) with mapi id 14.03.0319.002; Sat, 3 Mar 2018 14:42:51 -0800 From: "Vangati, Narender" To: Akhil Goyal , Jerin Jacob , "Gujjar, Abhinandan S" CC: "dev@dpdk.org" , "Rao, Nikhil" , "Eads, Gage" , "hemant.agrawal@nxp.com" , "narayanaprasad.athreya@cavium.com" , "nidadavolu.murthy@cavium.com" , "nithin.dabilpuram@cavium.com" Thread-Topic: [RFC v2, 2/2] eventdev: add crypto adapter API header Thread-Index: AQHTje8wfckl01Eyo0mJHZpDEv65JqOoJGCAgAQmTwCAAcWSgIAJa+mAgAfpsCA= Date: Sat, 3 Mar 2018 22:42:49 +0000 Message-ID: <3B5C8B5D2B969C4CBE78502867F1AD9A3E306823@FMSMSX108.amr.corp.intel.com> References: <1516013630-146114-1-git-send-email-abhinandan.gujjar@intel.com> <20180216193348.GA8882@jerin> <5612CB344B05EE4F95FC5B729939F7807069B737@PGSMSX102.gar.corp.intel.com> <20180220135920.GA23970@jerin> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZWUxNzE2ZTYtMGRlMS00NmNiLTg4YzEtNzJhODdhMDI5ZGY4IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6IlljR0tXamNBc1J3TnIrWFkwUlBEUCtzSktcL1VIYzNNTG00YzhFbzArZjdJPSJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.1.200.106] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [RFC v2, 2/2] eventdev: add crypto adapter API header X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Mar 2018 22:42:55 -0000 QWtoaWwsDQpJJ20gcHJvYmFibHkgbWlzc2luZyBhIHBvaW50IHNvbWV3aGVyZSBidXQgSSBkb24n dCBmb2xsb3cgdGhlIHN1Z2dlc3Rpb25zLiBUbyBtZSwgZXRoZGV2LCBjcnlwdG9kZXYsIGV2ZW50 ZGV2LCBldGMuIGFyZSBkZXZpY2UgYWJzdHJhY3Rpb25zLCB3aGVyZWFzIHRoZSBwcm9wb3NlZCBF TlEgbW9kZSBpc24ndCBhdCB0aGUgc2FtZSBsZXZlbC4NClRoZSBERVEgbW9kZSBpcyBhIGRldmlj ZSBhYnN0cmFjdGlvbiBmb3IgY3J5cHRvZGV2LT5ldmVudGRldiAod2hldGhlciBoL3cgb3Igcy93 IGJhc2VkKSwgYnV0IHRoZSBFTlEgcGFydCBvZiB0aGUgYWRhcHRlciBpcyBwdXJlbHkgYSBzL3cg cHJvZ3JhbW1pbmcgbW9kZWwgYW5kIG9wdGlvbmFsIHRvIHRoZSBhcHBsaWNhdGlvbi4gSXQgaXMg aW5kZXBlbmRlbnQgb2YgYW55IGRldmljZSBhbmQgaXTigJlzIGFuIGFwcGxpY2F0aW9uIGNob2lj ZSB3aGV0aGVyIGl0IHdhbnRzIHRvIHVzZSB0aGlzIG9yIG5vdC4gTm90aGluZyBwcmV2ZW50cyB0 aGUgYXBwbGljYXRpb24gZnJvbSBjYWxsaW5nIGNyeXB0b2Rldl9lbnF1ZXVlX2J1cnN0IHRvd2Fy ZHMgYW55IGRldmljZSBkaXJlY3RseSAod2hldGhlciBpdCBiZSBzb2Z0IGNyeXB0bywgTlhQLCBD YXZpdW0sIFFBVCwgZXRjICkgd2l0aGluIGFuIGV2ZW50ZGV2IGJhc2VkIGVudmlyb25tZW50LiAN ClRoZSBFTlEgbW9kZSBhbGxvd3MgYW4gYXBwbGljYXRpb24gcHJvZ3JhbW1pbmcgbW9kZWwgdG8g YmUgY29tcGxldGVseSBldmVudCBiYXNlZC4gSWYgdGhlIGFwcGxpY2F0aW9uIGNob29zZXMsIGl0 IGVuYWJsZXMgdGhlIEVOUSBwYXJ0IHdoZXJlIGl0IGVucXVldWVzIGFuIHJ0ZV9ldmVudCB0byB0 aGUgcy93IGFkYXB0ZXIgYW5kIHRoZSBhZGFwdGVyIHRoZW4gY2FsbHMgY3J5cHRvZGV2X2VucXVl dWVfYnVyc3Qgb24gaXRzIGJlaGFsZiwgdG93YXJkcyBhbnkgZGV2aWNlIFBNRCB3aGljaCB3YXMg Y3JlYXRlZC4gDQpUaGVyZSBhcmUgY2VydGFpbiBiZW5lZml0cyB0byBhcHBsaWNhdGlvbiBhcmNo aXRlY3R1cmUgdXNpbmcgdGhpcyBhZGFwdGVyIHdoZXJlIHlvdSBjYW4gbGV2ZXJhZ2UgdGhlIG9y ZGVyZWQgc2NoZWR1bGluZyB3aXRoaW4gZXZlbnRkZXYgZXRjLiwgKGFuZCBjZXJ0YWluIGNvbnMg d2hlcmUgeW91IG5lZWQgdG8gcnVuIHRoaXMgc2VydmljZSBzb21ld2hlcmUpIGJ1dCB0aGF04oCZ cyB1cCB0byB0aGUgYXBwbGljYXRpb24gdG8gZGVjaWRlLiANCg0KSW4gb3RoZXIgd29yZHMsIEkg ZG9u4oCZdCBjb25zaWRlciBFTlEgbW9kZSBhcyBhIGRldmljZSBhYnN0cmFjdGlvbiBsaWtlIGNy eXB0b2RldiBvciBldGhkZXYgd2hlcmUgaXQgbmVlZHMgdG8gcGx1ZyBpbiB0byBzb21ldGhpbmcg dHJhbnNwYXJlbnRseSBidXQgYSBwcm9ncmFtbWluZyBtb2RlbCB0aGF0IGlzIHByb3ZpZGVkIGFz IGEgY2hvaWNlLCBhbmQgdGhhdCBzaG91bGRu4oCZdCBiZSB0aWVkIHVwIGludG8gYSBkZXZpY2Ug YWJzdHJhY3Rpb24gbGF5ZXIuDQoNCnZucg0KLS0tDQoNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCkZyb206IEFraGlsIEdveWFsIFttYWlsdG86YWtoaWwuZ295YWxAbnhwLmNvbV0gDQpT ZW50OiBNb25kYXksIEZlYnJ1YXJ5IDI2LCAyMDE4IDc6NTIgQU0NClRvOiBKZXJpbiBKYWNvYiA8 amVyaW4uamFjb2JAY2F2aXVtbmV0d29ya3MuY29tPjsgR3VqamFyLCBBYmhpbmFuZGFuIFMgPGFi aGluYW5kYW4uZ3VqamFyQGludGVsLmNvbT4NCkNjOiBkZXZAZHBkay5vcmc7IFZhbmdhdGksIE5h cmVuZGVyIDxuYXJlbmRlci52YW5nYXRpQGludGVsLmNvbT47IFJhbywgTmlraGlsIDxuaWtoaWwu cmFvQGludGVsLmNvbT47IEVhZHMsIEdhZ2UgPGdhZ2UuZWFkc0BpbnRlbC5jb20+OyBoZW1hbnQu YWdyYXdhbEBueHAuY29tOyBuYXJheWFuYXByYXNhZC5hdGhyZXlhQGNhdml1bS5jb207IG5pZGFk YXZvbHUubXVydGh5QGNhdml1bS5jb207IG5pdGhpbi5kYWJpbHB1cmFtQGNhdml1bS5jb20NClN1 YmplY3Q6IFJlOiBbUkZDIHYyLCAyLzJdIGV2ZW50ZGV2OiBhZGQgY3J5cHRvIGFkYXB0ZXIgQVBJ IGhlYWRlcg0KDQpIaSBKZXJpbi9BYmhpbmFuZGFuLA0KDQpPbiAyLzIwLzIwMTggNzoyOSBQTSwg SmVyaW4gSmFjb2Igd3JvdGU6DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+PiBEYXRl OiBNb24sIDE5IEZlYiAyMDE4IDEwOjU1OjU4ICswMDAwDQo+PiBGcm9tOiAiR3VqamFyLCBBYmhp bmFuZGFuIFMiIDxhYmhpbmFuZGFuLmd1amphckBpbnRlbC5jb20+DQo+PiBUbzogSmVyaW4gSmFj b2IgPGplcmluLmphY29iQGNhdml1bW5ldHdvcmtzLmNvbT4NCj4+IENDOiAiZGV2QGRwZGsub3Jn IiA8ZGV2QGRwZGsub3JnPiwgIlZhbmdhdGksIE5hcmVuZGVyIg0KPj4gICA8bmFyZW5kZXIudmFu Z2F0aUBpbnRlbC5jb20+LCAiUmFvLCBOaWtoaWwiIDxuaWtoaWwucmFvQGludGVsLmNvbT4sICJF YWRzLA0KPj4gICBHYWdlIiA8Z2FnZS5lYWRzQGludGVsLmNvbT4sICJoZW1hbnQuYWdyYXdhbEBu eHAuY29tIg0KPj4gICA8aGVtYW50LmFncmF3YWxAbnhwLmNvbT4sICJha2hpbC5nb3lhbEBueHAu Y29tIiA8YWtoaWwuZ295YWxAbnhwLmNvbT4sDQo+PiAgICJuYXJheWFuYXByYXNhZC5hdGhyZXlh QGNhdml1bS5jb20iIDxuYXJheWFuYXByYXNhZC5hdGhyZXlhQGNhdml1bS5jb20+LA0KPj4gICAi bmlkYWRhdm9sdS5tdXJ0aHlAY2F2aXVtLmNvbSIgPG5pZGFkYXZvbHUubXVydGh5QGNhdml1bS5j b20+LA0KPj4gICAibml0aGluLmRhYmlscHVyYW1AY2F2aXVtLmNvbSIgPG5pdGhpbi5kYWJpbHB1 cmFtQGNhdml1bS5jb20+DQo+PiBTdWJqZWN0OiBSRTogW1JGQyB2MiwgMi8yXSBldmVudGRldjog YWRkIGNyeXB0byBhZGFwdGVyIEFQSSBoZWFkZXINCj4+DQo+PiBIaSBKZXJpbiwNCj4gDQo+IEhp IEFiaGluYW5kYW4sDQo+IA0KPj4NCj4+IFRoYW5rcyBmb3IgdGhlIHJldmlldy4gUGxlYXNlIGZp bmQgZmV3IGNvbW1lbnRzIGlubGluZS4NCj4+DQo+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4+PiBGcm9tOiBKZXJpbiBKYWNvYiBbbWFpbHRvOmplcmluLmphY29iQGNhdml1bW5ldHdv cmtzLmNvbV0NCj4+PiBTZW50OiBTYXR1cmRheSwgRmVicnVhcnkgMTcsIDIwMTggMTowNCBBTQ0K Pj4+IFRvOiBHdWpqYXIsIEFiaGluYW5kYW4gUyA8YWJoaW5hbmRhbi5ndWpqYXJAaW50ZWwuY29t Pg0KPj4+IENjOiBkZXZAZHBkay5vcmc7IFZhbmdhdGksIE5hcmVuZGVyIDxuYXJlbmRlci52YW5n YXRpQGludGVsLmNvbT47IA0KPj4+IFJhbywgTmlraGlsIDxuaWtoaWwucmFvQGludGVsLmNvbT47 IEVhZHMsIEdhZ2UgDQo+Pj4gPGdhZ2UuZWFkc0BpbnRlbC5jb20+OyBoZW1hbnQuYWdyYXdhbEBu eHAuY29tOyBha2hpbC5nb3lhbEBueHAuY29tOyANCj4+PiBuYXJheWFuYXByYXNhZC5hdGhyZXlh QGNhdml1bS5jb207IG5pZGFkYXZvbHUubXVydGh5QGNhdml1bS5jb207IA0KPj4+IG5pdGhpbi5k YWJpbHB1cmFtQGNhdml1bS5jb20NCj4+PiBTdWJqZWN0OiBSZTogW1JGQyB2MiwgMi8yXSBldmVu dGRldjogYWRkIGNyeXB0byBhZGFwdGVyIEFQSSBoZWFkZXINCj4+Pg0KPj4+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQo+Pj4+IERhdGU6IE1vbiwgMTUgSmFuIDIwMTggMTY6MjM6NTAgKzA1 MzANCj4+Pj4gRnJvbTogQWJoaW5hbmRhbiBHdWpqYXIgPGFiaGluYW5kYW4uZ3VqamFyQGludGVs LmNvbT4NCj4+Pj4gVG86IGplcmluLmphY29iQGNhdml1bW5ldHdvcmtzLmNvbQ0KPj4+PiBDQzog ZGV2QGRwZGsub3JnLCBuYXJlbmRlci52YW5nYXRpQGludGVsLmNvbSwgQWJoaW5hbmRhbiBHdWpq YXIgDQo+Pj4+IDxhYmhpbmFuZGFuLmd1amphckBpbnRlbC5jb20+LCBOaWtoaWwgUmFvIDxuaWto aWwucmFvQGludGVsLmNvbT4sIA0KPj4+PiBHYWdlIEVhZHMgPGdhZ2UuZWFkc0BpbnRlbC5jb20+ DQo+Pj4+IFN1YmplY3Q6IFtSRkMgdjIsIDIvMl0gZXZlbnRkZXY6IGFkZCBjcnlwdG8gYWRhcHRl ciBBUEkgaGVhZGVyDQo+Pj4+IFgtTWFpbGVyOiBnaXQtc2VuZC1lbWFpbCAxLjkuMQ0KPj4+Pg0K Pj4+PiArDQo+Pj4+ICsvKioNCj4+Pj4gKyAqIFRoaXMgYWRhcHRlciBhZGRzIHN1cHBvcnQgdG8g ZW5xdWV1ZSBjcnlwdG8gY29tcGxldGlvbnMgdG8gZXZlbnQgZGV2aWNlLg0KPj4+PiArICogVGhl IHBhY2tldCBmbG93IGZyb20gY3J5cHRvZGV2IHRvIHRoZSBldmVudCBkZXZpY2UgY2FuIGJlIA0K Pj4+PiArYWNjb21wbGlzaGVkDQo+Pj4+ICsgKiB1c2luZyBib3RoIFNXIGFuZCBIVyBiYXNlZCB0 cmFuc2ZlciBtZWNoYW5pc21zLg0KPj4+PiArICogVGhlIGFkYXB0ZXIgdXNlcyBhIEVBTCBzZXJ2 aWNlIGNvcmUgZnVuY3Rpb24gZm9yIFNXIGJhc2VkIA0KPj4+PiArcGFja2V0IHRyYW5zZmVyDQo+ Pj4+ICsgKiBhbmQgdXNlcyB0aGUgZXZlbnRkZXYgUE1EIGZ1bmN0aW9ucyB0byBjb25maWd1cmUg SFcgYmFzZWQgDQo+Pj4+ICtwYWNrZXQgdHJhbnNmZXINCj4+Pj4gKyAqIGJldHdlZW4gdGhlIGNy eXB0b2RldiBhbmQgdGhlIGV2ZW50IGRldmljZS4NCj4+Pj4gKyAqDQo+Pj4+ICsgKiBJbiB0aGUg Y2FzZSBvZiBTVyBiYXNlZCB0cmFuc2ZlcnMsIGFwcGxpY2F0aW9uIGNhbiBjaG9vc2UgdG8gDQo+ Pj4+ICtzdWJtaXQgYQ0KPj4+DQo+Pj4gSSB0aGluaywgd2UgY2FuIHJlbW92ZSAiSW4gdGhlIGNh c2Ugb2YgU1cgYmFzZWQgdHJhbnNmZXJzIiBhcyBpdCANCj4+PiBzaG91bGQgYmUgYXBwbGljYWJs ZSBmb3IgSFcgY2FzZSB0b28NCj4+IE9rLiBJbiB0aGF0IGNhc2UsIGFkYXB0ZXIgd2lsbCBkZXRl Y3QgdGhlIHByZXNlbmNlIG9mIEhXIGNvbm5lY3Rpb24gDQo+PiBiZXR3ZWVuIGNyeXB0b2RldiAm IGV2ZW50ZGV2IGFuZCB3aWxsIG5vdCBkZXF1ZXVlIGNyeXB0byBjb21wbGV0aW9ucy4NCj4gDQo+ IEkgd291bGQgc2F5IHByZXNlbmNlIG9mICJzcGVjaWZpYyBjYXBhYmlsaXR5IiBpbnN0ZWFkIG9m IEhXLg0KPiANCj4+DQo+Pj4NCj4+Pj4gKyAqIGNyeXB0byBvcGVyYXRpb24gZGlyZWN0bHkgdG8g Y3J5cHRvZGV2IG9yIHNlbmQgaXQgIHRvIHRoZSANCj4+Pj4gKyBjcnlwdG9kZXYNCj4+Pj4gKyAq IGFkYXB0ZXIgdmlhIGV2ZW50ZGV2LCB0aGUgY3J5cHRvZGV2IGFkYXB0ZXIgdGhlbiBzdWJtaXRz IHRoZSANCj4+Pj4gKyBjcnlwdG8NCj4+Pj4gKyAqIG9wZXJhdGlvbiB0byB0aGUgY3J5cHRvIGRl dmljZS4gVGhlIGZpcnN0IG1vZGUgaXMga25vd24gYXMgdGhlDQo+Pj4NCj4+PiBUaGUgZmlyc3Qg bW9kZSAoREVRKSBpcyB2ZXJ5IGNsZWFyLiBJbiB0aGUgc2Vjb25kIG1vZGUoRU5RX0RFUSksDQo+ Pj4gLSBIb3cgZG9lcyAid29ya2VyIiBzdWJtaXRzIHRoZSBjcnlwdG8gd29yayB0aHJvdWdoIGNy eXB0by1hZGFwdGVyPw0KPj4+IElmIEkgdW5kZXJzdGFuZCBpdCBjb3JyZWN0bHksICJ3b3JrZXJz IiBhbHdheXMgZGVhbHMgd2l0aCBvbmx5IA0KPj4+IGNyeXB0b2RldidzDQo+Pj4gcnRlX2NyeXB0 b2Rldl9lbnF1ZXVlX2J1cnN0KCkgQVBJIGFuZCAic2VydmljZSIgZnVuY3Rpb24gaW4gY3J5cHRv IA0KPj4+IGFkYXB0ZXIgd291bGQgYmUgcmVzcG9uc2libGUgZm9yIGRlcXVldWUoKSBmcm9tIGNy eXB0b2RldiBhbmQgZW5xdWV1ZSB0byBldmVudGRldj8NCj4+Pg0KPj4+IEkgdW5kZXJzdGFuZCB0 aGUgbmVlZCBmb3IgT1BfTkVXIHZzIE9QX0ZXRCBtb2RlIGRpZmZlcmVuY2UgaW4gYm90aCBtb2Rl cy4NCj4+PiBPdGhlciB0aGFuIHRoYXQsIFdoYXQgbWFrZXMgRU5RX0RFUSBkaWZmZXJlbnQ/IENv dWxkIHlvdSBzaGFyZSB0aGUgDQo+Pj4gZmxvdyBmb3IgRU5RX0RFUSBtb2RlIHdpdGggQVBJcy4N Cj4+DQo+PiAvKg0KPj4gQXBwbGljYXRpb24gY2hhbmdlcyBmb3IgRU5RX0RFUSBtb2RlOg0KPj4g LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4gCS8q IEluIEVOUV9ERVEgbW9kZSwgdG8gZW5xdWV1ZSB0byBhZGFwdGVyIGFwcA0KPj4gCSAqIGhhcyB0 byBmaWxsIG91dCBmb2xsb3dpbmcgZGV0YWlscy4NCj4+IAkgKi8NCj4+IAlzdHJ1Y3QgcnRlX2V2 ZW50X2NyeXB0b19yZXF1ZXN0ICpyZXE7DQo+PiAJc3RydWN0IHJ0ZV9jcnlwdG9fb3AgKm9wID0g cnRlX2NyeXB0b19vcF9hbGxvYygpOw0KPj4gCQ0KPj4gCS8qIGZpbGwgcmVxdWVzdCBpbmZvICov DQo+PiAJcmVxID0gKHZvaWQgKikoKGNoYXIgKilvcCArIG9wLnByaXZhdGVfZGF0YV9vZmZzZXQp Ow0KPj4gCXJlcS0+Y2Rldl9pZCA9IDE7DQo+PiAJcmVxLT5xdWV1ZV9wYWlyX2lkID0gMTsNCj4+ DQo+PiAJLyogZmlsbCByZXNwb25zZSBpbmZvICovDQo+PiAJLi4uDQo+Pg0KPj4gCS8qIHNlbmQg ZXZlbnQgdG8gY3J5cHRvIGFkYXB0ZXIgKi8NCj4+IAlldi0+ZXZlbnRfcHRyID0gb3A7DQo+PiAJ ZXYtPnF1ZXVlX2lkID0gZHN0X2V2ZW50X3FpZDsNCj4+IAlldi0+cHJpb3JpdHkgPSBkc3RfcHJp b3JpdHk7DQo+PiAJZXYtPnNjaGVkX3R5cGUgPSBkc3Rfc2NoZWRfdHlwZTsNCj4+IAlldi0+ZXZl bnRfdHlwZSA9IFJURV9FVkVOVF9UWVBFX0NSWVBUT0RFVjsNCj4+IAlldi0+c3ViX2V2ZW50X3R5 cGUgPSBzdWJfZXZlbnRfdHlwZTsNCj4+IAlldi0+Zmxvd19pZCA9IGRzdF9mbG93X2lkOw0KPj4g CXJldCA9IHJ0ZV9ldmVudF9lbnF1ZXVlX2J1cnN0KGV2ZW50X2Rldl9pZCwgZXZlbnRfcG9ydF9p ZCwgZXYsIDEpOw0KPj4NCj4+DQo+PiBBZGFwdGVyIGluIEVOUV9ERVEgbW9kZSwgc3VibWl0dGlu ZyBjcnlwdG8gb3BzIHRvIGNyeXB0b2RldjoNCj4+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+PiAJ biA9IHJ0ZV9ldmVudF9kZXF1ZXVlX2J1cnN0KGV2ZW50X2Rldl9pZCwgZXZlbnRfcG9ydF9pZCwg ZXYsIEJBVENIX1NJWkUsIHRpbWVfb3V0KTsNCj4+IAlzdHJ1Y3QgcnRlX2NyeXB0b19vcCAqb3Ag PSBldi0+ZXZlbnRfcHRyOw0KPj4gCXN0cnVjdCBydGVfZXZlbnRfY3J5cHRvX3JlcXVlc3QgKnJl cSA9ICh2b2lkICopb3AgKyBvcC5wcml2YXRlX2RhdGFfb2Zmc2V0Ow0KPj4gCWNkZXZfaWQgPSBy ZXEtPmNkZXZfaWQ7DQo+PiAJcXBfaWQgPSByZXEtPnF1ZXVlX3BhaXJfaWQNCj4+DQo+PiAJcmV0 ID0gcnRlX2NyeXB0b2Rldl9lbnF1ZXVlX2J1cnN0KGNkZXZfaWQsIHFwX2lkLCBvcCwgMSk7DQo+ IA0KPiBUaGlzIG1vZGUgd29udCB3b3JrIGZvciB0aGUgSFcgaW1wbGVtZW50YXRpb25zIHRoYXQg SSBrbm93LiBBcyBpbiBIVyANCj4gaW1wbGVtZW50YXRpb25zLCBUaGUgQWRhcHRlciBpcyBlbWJl ZGRlZCBpbiBIVy4NCj4gVGhlIERFUSBtb2RlIHdvcmtzLiBCdXQsIFRoaXMgd291bGQgY2FsbCBm b3IgdG8gaGF2ZSB0d28gc2VwYXJhdGUgDQo+IGFwcGxpY2F0aW9uIGxvZ2ljIGZvciBERVEgYW5k IEVOUV9ERVEgbW9kZS4NCj4gSSB0aGluaywgaXQgaXMgdW5hdm9pZGFibGUgYXMgU1cgc2NoZW1l IGhhcyBiZXR0ZXIgcGVyZm9ybWFuY2Ugd2l0aCBFTlFfREVRIE1PREUuDQo+IA0KPiBJZiB5b3Ug dGhpbmssIHRoZXJlIGlzIG5vIG9wdGlvbiBvdGhlciB0aGFuIGludHJvZHVjaW5nIGEgY2FwYWJp bGl0eSANCj4gaW4gYWRhcHRlciB0aGVuIHBsZWFzZSBjcmVhdGUgY2FwYWJpbGl0eSBpbiBSeCBh ZGFwdGVyIHRvIGluZm9ybSB0aGUgDQo+IGFkYXB0ZXIgY2FwYWJpbGl0eSB0byB0aGUgYXBwbGlj YXRpb24uDQo+IA0KPiBEbyB3ZSB0aGluaywgaXQgcG9zc2libGUgdG8gaGF2ZSBzY2hlbWUgd2l0 aCBFTlFfREVRIG1vZGUsIFdoZXJlIA0KPiBhcHBsaWNhdGlvbiBzdGlsbCBlbnF1ZXVlIHRvIGNy eXB0b2RldiBsaWtlIERFUSBtb2RlIGJ1dCB1c2luZyANCj4gY3J5cHRvZGV2LiBpZS4gQWRhcHRl ciBwYXRjaGVzIHRoZSBjcnlwdG9kZXYgZGV2LT5lbnF1ZXVlX2J1cnN0KCkgdG8gDQo+ICJldmVu dGRldiBlbnF1ZXVlIGJ1cnN0IiBmb2xsb3dlZCBieSAiZXhpdGluZyBkZXYtPmVucXVldWVfYnVy c3QiLg0KPiBTb21ldGhpbmcgbGlrZSBleGl0aW5nIGV0aGRldiByeF9idXJzdCBjYWxsYmFjayBz Y2hlbWUuDQo+IFRoaXMgd2lsbCBlbmFibGUgYXBwbGljYXRpb24gdG8gaGF2ZSB1bmlmaWVkIGZs b3cgSU1PLg0KPiANCj4gQW55IHRob3VnaHRzIGZyb20gTlhQIGZvbGtzPw0KDQpJIHNlZSB0aGF0 IHRoZXJlIGlzIHBlcmZvcm1hbmNlIGdhaW4gaW4gc3cgc2lkZSB3aGlsZSB1c2luZyBFTlFfREVR IG1vZGUuIEJ1dCBzaW5jZSB3ZSBhbHJlYWR5IGhhdmUgbWFueSBtb2RlcyBpbiB0aGUgYXBwbGlj YXRpb24gYWxyZWFkeSwgY2FuIHdlIG1ha2UgdGhpcyBvbmUgd2l0aCBzb21lIGNhbGxiYWNrIHRv IGNyeXB0b2Rldi4NCg0KU28gdGhlIGFwcGxpY2F0aW9uIGNhbiBjYWxsIHRoZSBydGVfY3J5cHRv ZGV2X2VucXVldWVfYnVyc3QoKSBhcyBpdCBpcyBkb2luZywgYW5kIGlmIHRoZSBFTlFfREVRIG1v ZGUgaXMgc3VwcG9ydGVkIGJ5IHRoZSB1bmRlcm5lYXRoIGltcGxlbWVudGF0aW9uIHRoZW4sIGl0 IGNhbiByZWdpc3RlciBhIGNhbGxiYWNrIHRvIHRoZSBpbXBsZW1lbnRhdGlvbiB0aGF0IGlzIHJl cXVpcmVkIGluIHRoZSBkcml2ZXIgbGF5ZXIgaXRzZWxmLg0KDQpJbiB0aGlzIHdheSwgdGhlIGFw cGxpY2F0aW9uIHdpbGwgYmVjb21lIGxlc3MgY29tcGxleCBhcyBjb21wYXJlZCB0byB0aGUNCjIg cGFyYWxsZWwgaW1wbGVtZW50YXRpb25zIGZvciBTVyBhbmQgSFcuIEl0IHdpbGwgYWxzbyBnaXZl IG1vcmUgZmxleGliaWxpdHkgdG8gdGhlIGRyaXZlciBpbXBsZW1lbnRhdGlvbiBhcyB3ZWxsLg0K DQotQWtoaWwNCj4gDQo+PiAqLw0KPj4+DQo+Pj4+ICsgKiBkZXF1ZXVlIG9ubHkgKERFUSkgbW9k ZSAgYW5kIHRoZSBzZWNvbmQgYXMgdGhlIGVucXVldWUgLSANCj4+Pj4gKyBkZXF1ZXVlDQo+Pj4N Cj4+PiBleHRyYSBzcGFjZSBiZXR3ZWVuICJtb2RlIiBhbmQgImFuZCINCj4+IE9rDQo+Pj4NCj4+ Pj4gKyAqIChFTlFfREVRKSBtb2RlLiBUaGUgY2hvaWNlIG9mIG1vZGUgY2FuIGJlIHNwZWNpZmll ZCB3aGVuIA0KPj4+PiArIGNyZWF0aW5nDQo+Pj4+ICsgKiB0aGUgYWRhcHRlci4NCj4+Pj4gKyAq IEluIHRoZSBsYXR0ZXIgY2hvaWNlLCB0aGUgY3J5cHRvZGV2IGFkYXB0ZXIgaXMgYWJsZSB0byB1 c2UNCj4+Pj4gKyAqIFJURV9PUF9GT1JXQVJEIGFzIHRoZSBldmVudCBkZXYgZW5xdWV1ZSB0eXBl LCB0aGlzIGhhcyBhIA0KPj4+PiArIHBlcmZvcm1hbmNlDQo+Pj4+ICsgKiBhZHZhbnRhZ2UgaW4g ImNsb3NlZCBzeXN0ZW0iIGV2ZW50ZGV2cyBsaWtlIHRoZSBldmVudGRldiBTVyBQTUQgDQo+Pj4+ ICsgYW5kDQo+Pj4NCj4gDQoNCg==