From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9457889CF8 for ; Wed, 8 Jan 2020 12:01:53 +0000 (UTC) Date: Wed, 8 Jan 2020 13:01:51 +0100 From: Katarzyna Dec Message-ID: <20200108120151.GB22921@kdec5-desk.ger.corp.intel.com> References: <20200108075411.8943-1-zbigniew.kempczynski@intel.com> <20200108075411.8943-3-zbigniew.kempczynski@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20200108075411.8943-3-zbigniew.kempczynski@intel.com> Subject: Re: [igt-dev] [PATCH i-g-t v5 2/3] lib/rendercopy_bufmgr: Add rendercopy buffer manager List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Zbigniew =?utf-8?Q?Kempczy=C5=84ski?= , igt-dev@lists.freedesktop.org List-ID: T24gV2VkLCBKYW4gMDgsIDIwMjAgYXQgMDg6NTQ6MTBBTSArMDEwMCwgWmJpZ25pZXcgS2VtcGN6 ecWEc2tpIHdyb3RlOgo+IFRoaXMgaXMgbWlkZGxlIGxheWVyIGJldHdlZW4gcmVuZGVyIGNvcHkg dGVzdHMgYW5kIGJ1ZmZlciBvcGVyYXRpb25zCj4gKGJ1Zl9vcHMpLiBSZW5kZXIgY29weSB0ZXN0 cyB1c2VzIGxpYmRybSBzbyBhZGRpbmcgd3JhcHBlciB0byBpbmRlcGVuZGVudAo+IGJ1Zl9vcHMg d2FzIG5lY2Vzc2FyeS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBaYmlnbmlldyBLZW1wY3p5xYRza2kg PHpiaWduaWV3LmtlbXBjenluc2tpQGludGVsLmNvbT4KPiBDYzogQ2hyaXMgV2lsc29uIDxjaHJp c0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IEthdGFyenluYSBEZWMgPGthdGFyenluYS5kZWNA aW50ZWwuY29tPgo+IC0tLQo+ICBsaWIvTWFrZWZpbGUuc291cmNlcyAgICB8ICAgMiArCj4gIGxp Yi9tZXNvbi5idWlsZCAgICAgICAgIHwgICAxICsKPiAgbGliL3JlbmRlcmNvcHlfYnVmbWdyLmMg fCAxNzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBsaWIvcmVu ZGVyY29weV9idWZtZ3IuaCB8ICAyOCArKysrKysrCj4gIDQgZmlsZXMgY2hhbmdlZCwgMjA2IGlu c2VydGlvbnMoKykKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9yZW5kZXJjb3B5X2J1Zm1nci5j Cj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvcmVuZGVyY29weV9idWZtZ3IuaAo+IAo+IGRpZmYg LS1naXQgYS9saWIvTWFrZWZpbGUuc291cmNlcyBiL2xpYi9NYWtlZmlsZS5zb3VyY2VzCj4gaW5k ZXggZGEzNGVhZTcuLmZlYjhjMjBkIDEwMDY0NAo+IC0tLSBhL2xpYi9NYWtlZmlsZS5zb3VyY2Vz Cj4gKysrIGIvbGliL01ha2VmaWxlLnNvdXJjZXMKPiBAQCAtOTUsNiArOTUsOCBAQCBsaWJfc291 cmNlX2xpc3QgPQkgCVwKPiAgCWdlbjdfcmVuZGVyLmgJCVwKPiAgCWdlbjhfcmVuZGVyLmgJCVwK PiAgCWdlbjlfcmVuZGVyLmgJCVwKPiArCXJlbmRlcmNvcHlfYnVmbWdyLmMJXAo+ICsJcmVuZGVy Y29weV9idWZtZ3IuaAlcCj4gIAlyZW5kZXJjb3B5X2dlbjQuYwlcCj4gIAlyZW5kZXJjb3B5X2dl bjYuYwlcCj4gIAlyZW5kZXJjb3B5X2dlbjcuYwlcCj4gZGlmZiAtLWdpdCBhL2xpYi9tZXNvbi5i dWlsZCBiL2xpYi9tZXNvbi5idWlsZAo+IGluZGV4IGNmM2UzNWRhLi4zYmYzOTkxNSAxMDA2NDQK PiAtLS0gYS9saWIvbWVzb24uYnVpbGQKPiArKysgYi9saWIvbWVzb24uYnVpbGQKPiBAQCAtMzks NiArMzksNyBAQCBsaWJfc291cmNlcyA9IFsKPiAgCSdncHVfY21kcy5jJywKPiAgCSdyZW5kZXJj b3B5X2k5MTUuYycsCj4gIAkncmVuZGVyY29weV9pODMwLmMnLAo+ICsJJ3JlbmRlcmNvcHlfYnVm bWdyLmMnLAo+ICAJJ3JlbmRlcmNvcHlfZ2VuNC5jJywKPiAgCSdyZW5kZXJjb3B5X2dlbjYuYycs Cj4gIAkncmVuZGVyY29weV9nZW43LmMnLAo+IGRpZmYgLS1naXQgYS9saWIvcmVuZGVyY29weV9i dWZtZ3IuYyBiL2xpYi9yZW5kZXJjb3B5X2J1Zm1nci5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQK PiBpbmRleCAwMDAwMDAwMC4uYmI4MGY2MmMKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvbGliL3Jl bmRlcmNvcHlfYnVmbWdyLmMKPiBAQCAtMCwwICsxLDE3NSBAQAo+ICsvKgo+ICsgKiBDb3B5cmln aHQgwqkgMjAyMCBJbnRlbCBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIGlzIGhl cmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQo+ ICsgKiBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBm aWxlcyAodGhlICJTb2Z0d2FyZSIpLAo+ICsgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRo b3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCj4gKyAqIHRoZSBy aWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBz dWJsaWNlbnNlLAo+ICsgKiBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQg dG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUKPiArICogU29mdHdhcmUgaXMgZnVybmlzaGVk IHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKPiArICoKPiAr ICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ug KGluY2x1ZGluZyB0aGUgbmV4dAo+ICsgKiBwYXJhZ3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGlu IGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCj4gKyAqIFNvZnR3YXJl Lgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBX QVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgo+ICsgKiBJTVBMSUVELCBJTkNMVURJTkcg QlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKPiAr ICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4g IElOIE5PIEVWRU5UIFNIQUxMCj4gKyAqIFRIRSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJT IEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4gKyAqIExJQUJJTElU WSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBB UklTSU5HCj4gKyAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRX QVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MKPiArICogSU4gVEhFIFNPRlRXQVJFLgo+ ICsgKgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KPiArI2luY2x1ZGUgImln dC5oIgo+ICsjaW5jbHVkZSAiaWd0X3g4Ni5oIgo+ICsjaW5jbHVkZSAicmVuZGVyY29weV9idWZt Z3IuaCIKPiArCj4gKy8qKgo+ICsgKiBTRUNUSU9OOnJlbmRlcmNvcHlfYnVmbWdyCj4gKyAqIEBz aG9ydF9kZXNjcmlwdGlvbjogUmVuZGVyIGNvcHkgYnVmZmVyIG1hbmFnZXIKPiArICogQHRpdGxl OiBSZW5kZXIgY29weSBidWZtZ3IKPiArICogQGluY2x1ZGU6IGlndC5oCj4gKyAqCj4gKyAqICMg UmVuZGVyY29weSBidWZmZXIgbWFuYWdlcgo+ICsgKgo+ICsgKiBSZW5kZXJjb3B5IGRlcGVuZHMg b24gbGliZHJtIGFuZCBpZ3RfYnVmLCBzbyBzb21lIG1pZGRsZSBsYXllciB0byBpbnRlbF9idWYK PiArICogYW5kIGJ1Zl9vcHMgaXMgcmVxdWlyZWQuCj4gKyAqCj4gKyAqIHxbPCEtLSBsYW5ndWFn ZT0iYyIgLS0+Cj4gKyAqIHN0cnVjdCByZW5kZXJjb3B5X2J1Zm1nciAqYm1ncjsKPiArICogLi4u Cj4gKyAqIGJtZ3IgPSByZW5kZXJjb3B5X2J1Zm1ncl9jcmVhdGUoZmQsIGJ1Zm1ncik7Cj4gKyAq IC4uLgo+ICsgKiBpZ3RfYnVmX2luaXQoYm1nciwgJmJ1ZiwgNTEyLCA1MTIsIDMyLCBJOTE1X1RJ TElOR19YLCBmYWxzZSk7Cj4gKyAqIC4uLgo+ICsgKiBsaW5lYXJfdG9faWd0X2J1ZihibWdyLCAm YnVmLCBsaW5lYXIpOwo+ICsgKiAuLi4KPiArICogaWd0X2J1Zl90b19saW5lYXIoYm1nciwgJmJ1 ZiwgbGluZWFyKTsKPiArICogLi4uCj4gKyAqIHJlbmRlcmNvcHlfYnVmbWdyX2Rlc3Ryb3koYm1n cik7Cj4gKyAqIF18Cj4gKyAqLwo+ICsKPiArc3RydWN0IHJlbmRlcmNvcHlfYnVmbWdyIHsKPiAr CWludCBmZDsKPiArCWRybV9pbnRlbF9idWZtZ3IgKmJ1Zm1ncjsKPiArCXN0cnVjdCBidWZfb3Bz ICpib3BzOwo+ICt9Owo+ICsKPiArc3RhdGljIHZvaWQgX19pZ3RfYnVmX3RvX2ludGVsX2J1Zihz dHJ1Y3QgaWd0X2J1ZiAqYnVmLCBzdHJ1Y3QgaW50ZWxfYnVmICppYnVmKQo+ICt7Cj4gKwlpYnVm LT5oYW5kbGUgPSBidWYtPmJvLT5oYW5kbGU7Cj4gKwlpYnVmLT5zdHJpZGUgPSBidWYtPnN1cmZh Y2VbMF0uc3RyaWRlOwo+ICsJaWJ1Zi0+dGlsaW5nID0gYnVmLT50aWxpbmc7Cj4gKwlpYnVmLT5i cHAgPSBidWYtPmJwcDsKPiArCWlidWYtPnNpemUgPSBidWYtPnN1cmZhY2VbMF0uc2l6ZTsKPiAr CWlidWYtPmNvbXByZXNzaW9uID0gYnVmLT5jb21wcmVzc2lvbjsKPiArCWlidWYtPmF1eC5vZmZz ZXQgPSBidWYtPmNjc1swXS5vZmZzZXQ7Cj4gKwlpYnVmLT5hdXguc3RyaWRlID0gYnVmLT5jY3Nb MF0uc3RyaWRlOwo+ICt9Cj4gKwo+ICt2b2lkIGlndF9idWZfdG9fbGluZWFyKHN0cnVjdCByZW5k ZXJjb3B5X2J1Zm1nciAqYm1nciwgc3RydWN0IGlndF9idWYgKmJ1ZiwKPiArCQkgICAgICAgdWlu dDMyX3QgKmxpbmVhcikKPiArewo+ICsJc3RydWN0IGludGVsX2J1ZiBpYnVmOwo+ICsKPiArCV9f aWd0X2J1Zl90b19pbnRlbF9idWYoYnVmLCAmaWJ1Zik7Cj4gKwo+ICsJaW50ZWxfYnVmX3RvX2xp bmVhcihibWdyLT5ib3BzLCAmaWJ1ZiwgbGluZWFyKTsKPiArfQo+ICsKPiArdm9pZCBsaW5lYXJf dG9faWd0X2J1ZihzdHJ1Y3QgcmVuZGVyY29weV9idWZtZ3IgKmJtZ3IsIHN0cnVjdCBpZ3RfYnVm ICpidWYsCj4gKwkJICAgICAgIHVpbnQzMl90ICpsaW5lYXIpCj4gK3sKPiArCXN0cnVjdCBpbnRl bF9idWYgaWJ1ZjsKPiArCj4gKwlfX2lndF9idWZfdG9faW50ZWxfYnVmKGJ1ZiwgJmlidWYpOwo+ ICsKPiArCWxpbmVhcl90b19pbnRlbF9idWYoYm1nci0+Ym9wcywgJmlidWYsIGxpbmVhcik7Cj4g K30KPiArCj4gK3N0cnVjdCByZW5kZXJjb3B5X2J1Zm1nciAqcmVuZGVyY29weV9idWZtZ3JfY3Jl YXRlKGludCBmZCwKPiArCQkJCQkJICAgZHJtX2ludGVsX2J1Zm1nciAqYnVmbWdyKQo+ICt7Cj4g KwlzdHJ1Y3QgYnVmX29wcyAqYm9wczsKPiArCXN0cnVjdCByZW5kZXJjb3B5X2J1Zm1nciAqYm1n cjsKPiArCj4gKwlpZ3RfYXNzZXJ0KGJ1Zm1ncik7Cj4gKwo+ICsJYm9wcyA9IGJ1Zl9vcHNfY3Jl YXRlKGZkKTsKPiArCWlndF9hc3NlcnQoYm9wcyk7Cj4gKwo+ICsJYm1nciA9IGNhbGxvYygxLCBz aXplb2YoKmJtZ3IpKTsKPiArCWlndF9hc3NlcnQoYm1ncik7Cj4gKwo+ICsJYm1nci0+ZmQgPSBm ZDsKPiArCWJtZ3ItPmJ1Zm1nciA9IGJ1Zm1ncjsKPiArCWJtZ3ItPmJvcHMgPSBib3BzOwo+ICsK PiArCXJldHVybiBibWdyOwo+ICt9Cj4gKwo+ICt2b2lkIHJlbmRlcmNvcHlfYnVmbWdyX2Rlc3Ry b3koc3RydWN0IHJlbmRlcmNvcHlfYnVmbWdyICpibWdyKQo+ICt7Cj4gKwlpZ3RfYXNzZXJ0KGJt Z3IpOwo+ICsJaWd0X2Fzc2VydChibWdyLT5ib3BzKTsKPiArCj4gKwlidWZfb3BzX2Rlc3Ryb3ko Ym1nci0+Ym9wcyk7Cj4gKwlmcmVlKGJtZ3IpOwo+ICt9Cj4gKwo+ICtib29sIHJlbmRlcmNvcHlf YnVmbWdyX3NldF9zb2Z0d2FyZV90aWxpbmcoc3RydWN0IHJlbmRlcmNvcHlfYnVmbWdyICpibWdy LAo+ICsJCQkJCSAgIHVpbnQzMl90IHRpbGluZywKPiArCQkJCQkgICBib29sIHVzZV9zb2Z0d2Fy ZV90aWxpbmcpCj4gK3sKPiArCXJldHVybiBidWZfb3BzX3NldF9zb2Z0d2FyZV90aWxpbmcoYm1n ci0+Ym9wcywgdGlsaW5nLAo+ICsJCQkJCSAgIHVzZV9zb2Z0d2FyZV90aWxpbmcpOwo+ICt9Cj4g Kwo+ICt2b2lkIGlndF9idWZfaW5pdChzdHJ1Y3QgcmVuZGVyY29weV9idWZtZ3IgKmJtZ3IsIHN0 cnVjdCBpZ3RfYnVmICpidWYsCj4gKwkJICBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGludCBicHAs Cj4gKwkJICB1aW50MzJfdCB0aWxpbmcsIGJvb2wgY29tcHJlc3Npb24pCj4gK3sKPiArCXN0cnVj dCBpbnRlbF9idWYgaWJ1ZjsKPiArCWludCBzaXplOwo+ICsJaW50IGNjc193aWR0aCwgY2NzX2hl aWdodDsKPiArCXVpbnQzMl90IGRldmlkOwo+ICsJaW50IGdlbmVyYXRpb247Cj4gKwo+ICsJZGV2 aWQgPSBpbnRlbF9nZXRfZHJtX2RldmlkKGJtZ3ItPmZkKTsKPiArCWdlbmVyYXRpb24gPSBpbnRl bF9nZW4oZGV2aWQpOwo+ICsKPiArCWlndF9hc3NlcnQoYnVmKTsKPiArCW1lbXNldChidWYsIDAs IHNpemVvZigqYnVmKSk7Cj4gKwo+ICsJYnVmLT5zdXJmYWNlWzBdLnN0cmlkZSA9IEFMSUdOKHdp ZHRoICogKGJwcCAvIDgpLCAxMjgpOwo+ICsJYnVmLT5zdXJmYWNlWzBdLnNpemUgPSBidWYtPnN1 cmZhY2VbMF0uc3RyaWRlICogaGVpZ2h0Owo+ICsJYnVmLT50aWxpbmcgPSB0aWxpbmc7Cj4gKwli dWYtPmJwcCA9IGJwcDsKPiArCWJ1Zi0+Y29tcHJlc3Npb24gPSBjb21wcmVzc2lvbjsKPiArCj4g KwljY3Nfd2lkdGggPSBpZ3RfYnVmX2Njc193aWR0aChnZW5lcmF0aW9uLCBidWYpOwo+ICsJY2Nz X2hlaWdodCA9IGlndF9idWZfY2NzX2hlaWdodChnZW5lcmF0aW9uLCBidWYpOwo+ICsKPiArCXNp emUgPSBidWYtPnN1cmZhY2VbMF0uc3RyaWRlICogQUxJR04oaGVpZ2h0LCAzMik7Cj4gKwo+ICsJ aWYgKGNvbXByZXNzaW9uKSB7Cj4gKwkJYnVmLT5jY3NbMF0ub2Zmc2V0ID0gYnVmLT5zdXJmYWNl WzBdLnN0cmlkZSAqIEFMSUdOKGhlaWdodCwgMzIpOwo+ICsJCWJ1Zi0+Y2NzWzBdLnN0cmlkZSA9 IGNjc193aWR0aDsKPiArCQlzaXplID0gYnVmLT5jY3NbMF0ub2Zmc2V0ICsgY2NzX3dpZHRoICog Y2NzX2hlaWdodDsKPiArCX0KPiArCj4gKwlidWYtPmJvID0gZHJtX2ludGVsX2JvX2FsbG9jKGJt Z3ItPmJ1Zm1nciwgIiIsIHNpemUsIDQwOTYpOwo+ICsKPiArCWludGVsX2J1Zl9pbml0X3VzaW5n X2hhbmRsZShibWdyLT5ib3BzLAo+ICsJCQkJICAgIGJ1Zi0+Ym8tPmhhbmRsZSwKPiArCQkJCSAg ICAmaWJ1ZiwKPiArCQkJCSAgICB3aWR0aCwgaGVpZ2h0LCBicHAsIHRpbGluZywKPiArCQkJCSAg ICBjb21wcmVzc2lvbik7Cj4gKwo+ICsJYnVmLT5jY3NbMF0ub2Zmc2V0ID0gaWJ1Zi5hdXgub2Zm c2V0Owo+ICsJYnVmLT5jY3NbMF0uc3RyaWRlID0gaWJ1Zi5hdXguc3RyaWRlOwo+ICt9Cj4gZGlm ZiAtLWdpdCBhL2xpYi9yZW5kZXJjb3B5X2J1Zm1nci5oIGIvbGliL3JlbmRlcmNvcHlfYnVmbWdy LmgKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwLi44ZDhhMWEwNAo+IC0t LSAvZGV2L251bGwKPiArKysgYi9saWIvcmVuZGVyY29weV9idWZtZ3IuaAo+IEBAIC0wLDAgKzEs MjggQEAKPiArI2lmbmRlZiBfX1JFTkRFUkNPUFlfQlVGTUdSX0hfXwo+ICsjZGVmaW5lIF9fUkVO REVSQ09QWV9CVUZNR1JfSF9fCj4gKwo+ICsjaW5jbHVkZSA8c3RkaW50Lmg+Cj4gKyNpbmNsdWRl ICJpbnRlbF9idWZvcHMuaCIKPiArI2luY2x1ZGUgImludGVsX2JhdGNoYnVmZmVyLmgiCj4gKwo+ ICtzdHJ1Y3QgcmVuZGVyY29weV9idWZtZ3I7Cj4gKwo+ICtzdHJ1Y3QgcmVuZGVyY29weV9idWZt Z3IgKnJlbmRlcmNvcHlfYnVmbWdyX2NyZWF0ZShpbnQgZmQsCj4gKwkJCQkJCSAgIGRybV9pbnRl bF9idWZtZ3IgKmJ1Zm1ncik7Cj4gK3ZvaWQgcmVuZGVyY29weV9idWZtZ3JfZGVzdHJveShzdHJ1 Y3QgcmVuZGVyY29weV9idWZtZ3IgKmJtZ3IpOwo+ICsKPiArYm9vbCByZW5kZXJjb3B5X2J1Zm1n cl9zZXRfc29mdHdhcmVfdGlsaW5nKHN0cnVjdCByZW5kZXJjb3B5X2J1Zm1nciAqYm1nciwKPiAr CQkJCQkgICB1aW50MzJfdCB0aWxpbmcsCj4gKwkJCQkJICAgYm9vbCB1c2Vfc29mdHdhcmVfdGls aW5nKTsKPiArCj4gK3ZvaWQgaWd0X2J1Zl90b19saW5lYXIoc3RydWN0IHJlbmRlcmNvcHlfYnVm bWdyICpibWdyLCBzdHJ1Y3QgaWd0X2J1ZiAqYnVmLAo+ICsJCSAgICAgICB1aW50MzJfdCAqbGlu ZWFyKTsKPiArCj4gK3ZvaWQgbGluZWFyX3RvX2lndF9idWYoc3RydWN0IHJlbmRlcmNvcHlfYnVm bWdyICpibWdyLCBzdHJ1Y3QgaWd0X2J1ZiAqYnVmLAo+ICsJCSAgICAgICB1aW50MzJfdCAqbGlu ZWFyKTsKPiArCj4gK3ZvaWQgaWd0X2J1Zl9pbml0KHN0cnVjdCByZW5kZXJjb3B5X2J1Zm1nciAq Ym1nciwgc3RydWN0IGlndF9idWYgKmJ1ZiwKPiArCQkgIGludCB3aWR0aCwgaW50IGhlaWdodCwg aW50IGJwcCwKPiArCQkgIHVpbnQzMl90IHRpbGluZywgYm9vbCBjb21wcmVzc2lvbik7Cj4gKwo+ ICsjZW5kaWYKTEdUTSwKQWNrLWJ5OiBLYXRhcnp5bmEgRGVjIDxrYXRhcnp5bmEuZGVjQGludGVs LmNvbT4KS2FzaWEgOikKPiAtLSAKPiAyLjIzLjAKPiAKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pZ3QtZGV2Cg==