From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH 3/8] drm/msm: dpu: Remove vblank_callback from encoder Date: Wed, 14 Nov 2018 10:13:23 -0500 Message-ID: <20181114151323.GM154160@art_vandelay> References: <20181113205257.170707-1-sean@poorly.run> <20181113205257.170707-3-sean@poorly.run> <6d9307aae86d14ecbf70a39012b2d9f2@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <6d9307aae86d14ecbf70a39012b2d9f2-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Jeykumar Sankaran Cc: Sean Paul , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, Sean Paul , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org T24gVHVlLCBOb3YgMTMsIDIwMTggYXQgMDQ6NDc6MjJQTSAtMDgwMCwgSmV5a3VtYXIgU2Fua2Fy YW4gd3JvdGU6Cj4gT24gMjAxOC0xMS0xMyAxMjo1MiwgU2VhbiBQYXVsIHdyb3RlOgo+ID4gRnJv bTogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+Cj4gPiAKPiA+IFRoZSBpbmRpcmVj dGlvbiBvZiByZWdpc3RlcmluZyBhIGNhbGxiYWNrIGFuZCBvcGFxdWUgcG9pbnRlciBpc24ndCBy ZWFsCj4gPiB1c2VmdWwgd2hlbiB0aGVyZSdzIG9ubHkgb25lIGNhbGxzaXRlLiBTbyBpbnN0ZWFk IG9mIGhhdmluZyB0aGUKPiA+IHZibGFua19jYiByZWdpc3RyYXRpb24sIGp1c3QgZ2l2ZSBlbmNv ZGVyIGEgY3J0YyBhbmQgbGV0IGl0IGRpcmVjdGx5Cj4gPiBjYWxsIHRoZSB2YmxhbmsgaGFuZGxl ci4KPiA+IAo+ID4gSW4gYSBsYXRlciBwYXRjaCwgd2UnbGwgbWFrZSB1c2Ugb2YgdGhpcyBmdXJ0 aGVyLgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBTZWFuIFBhdWwgPHNlYW5wYXVsQGNocm9taXVt Lm9yZz4KPiA+IC0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRj LmMgICAgfCAgOCArKystLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1 X2NydGMuaCAgICB8ICA2ICsrKysrCj4gPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEv ZHB1X2VuY29kZXIuYyB8IDI1ICsrKysrKysrKysrLS0tLS0tLS0tLQo+ID4gIGRyaXZlcnMvZ3B1 L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmggfCAxMCArKysrLS0tLS0KPiA+ICA0IGZp bGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQo+ID4gCj4gPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuYwo+ID4g Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfY3J0Yy5jCj4gPiBpbmRleCBhZGRh MGFhMGNiYWEuLjM4MTE5YjRkNGE4MCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9t c20vZGlzcC9kcHUxL2RwdV9jcnRjLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlz cC9kcHUxL2RwdV9jcnRjLmMKPiA+IEBAIC0yOTEsOSArMjkxLDggQEAgZW51bSBkcHVfaW50Zl9t b2RlIGRwdV9jcnRjX2dldF9pbnRmX21vZGUoc3RydWN0Cj4gPiBkcm1fY3J0YyAqY3J0YykKPiA+ ICAJcmV0dXJuIElOVEZfTU9ERV9OT05FOwo+ID4gIH0KPiA+IAo+ID4gLXN0YXRpYyB2b2lkIGRw dV9jcnRjX3ZibGFua19jYih2b2lkICpkYXRhKQo+ID4gK3ZvaWQgZHB1X2NydGNfdmJsYW5rX2Nh bGxiYWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiA+ICB7Cj4gPiAtCXN0cnVjdCBkcm1fY3J0 YyAqY3J0YyA9IChzdHJ1Y3QgZHJtX2NydGMgKilkYXRhOwo+ID4gIAlzdHJ1Y3QgZHB1X2NydGMg KmRwdV9jcnRjID0gdG9fZHB1X2NydGMoY3J0Yyk7Cj4gCj4gU2luY2Ugd2UgYXJlIGNhbGxpbmcg aW50byBhIGxvY2FsbHkgc3RvcmVkIENSVEMgYW5kIG5vdCB0cmFja2luZyBkaXNhYmxlLgo+IFNo b3VsZAo+IHdlIGNoZWNrIGZvciBjcnRjLT5lbmFibGUgYmVmb3JlIHByb2Nlc3NpbmcgdGhlIGNh bGxiYWNrPwo+IAo+IEkgc2VlIHZibGFua19vbi9vZmYgY2FudCBiZSBjYWxsZWQgd2hlbiBDUlRD IGlzIGRpc2FibGVkIHdpdGggdGhlIHJlc3QKPiBvZiB0aGUgcGF0Y2hlcyBpbiB0aGUgc2VyaWVz LiBCdXQgdGhpcyBjYWxsYmFjayBpcyB0cmlnZ2VyZWQgYnkgSVJRJ3MKPiBjb250ZXh0LgoKSG1t LCB5ZWFoLCBJIGhhZCBhc3N1bWVkIHRoYXQgd2Ugd291bGRuJ3QgaGF2ZSBhbnkgaW50ZXJydXB0 cyBhZnRlciBpcnEgZGlzYWJsZS4KSG93ZXZlciBpdCBkb2Vzbid0IHNlZW0gbGlrZSB0aGF0J3Mg dGhlIGNhc2UuCgpUaGF0IHNhaWQsIEkgZG9uJ3QgdGhpbmsgY2hlY2tpbmcgY3J0Yy0+ZW5hYmxl IGlzIHF1aXRlIHdoYXQgd2Ugd2FudC4gSW4gdGhlCmNhc2Ugb2YgZGlzYWJsZSwgdGhlIGNydGMg aXMgY2xlYXJlZCBmcm9tIHRoZSBlbmNvZGVyLCBzbyBjaGVja2luZyBmb3IKY3J0YyAhPSBOVUxM IHdvdWxkIGJlIGJldHRlciBoZXJlLiBTR1RZPwoKTm93IHRoYXQgSSd2ZSBkdWcgaW50byB0aGUg dmJsYW5rIGlycSBoYW5kbGluZyBhIGJpdCBpbiB0aGUgZW5jb2RlciwgaXQgc2VlbXMKbGlrZSB0 aGF0IGNvdWxkIGJlIG1vdmVkIHRvIHRoZSBjcnRjIGFuZCBhIGJ1bmNoIG9mIHRoZSBlbmNvZGVy LT5jcnRjLT5lbmNvZGVyCmJvdW5jaW5nIGFyb3VuZCBjb3VsZCBiZSBhdm9pZGVkLiBPZmYgdGhl IHRvcCBvZiB5b3VyIGhlYWQsIGlzIHRoZXJlIGFueSByZWFzb24Kd2UgY291bGRuJ3QgbW92ZSB0 aGUgdmJsYW5rIGlycSBoYW5kbGluZyBpbnRvIGNydGMgZnJvbSBlbmNvZGVyPwoKU2VhbgoKPiAK PiA+IAo+ID4gIAkvKiBrZWVwIHN0YXRpc3RpY3Mgb24gdmJsYW5rIGNhbGxiYWNrIC0gd2l0aCBh dXRvIHJlc2V0IHZpYQo+ID4gZGVidWdmcyAqLwo+ID4gQEAgLTc3OSw4ICs3NzgsNyBAQCBzdGF0 aWMgdm9pZCBfZHB1X2NydGNfdmJsYW5rX2VuYWJsZV9ub19sb2NrKAo+ID4gIAkJCQkJCSAgICAg RFJNSUQoZW5jKSwgZW5hYmxlLAo+ID4gIAkJCQkJCSAgICAgZHB1X2NydGMpOwo+ID4gCj4gPiAt CQkJZHB1X2VuY29kZXJfcmVnaXN0ZXJfdmJsYW5rX2NhbGxiYWNrKGVuYywKPiA+IC0JCQkJCWRw dV9jcnRjX3ZibGFua19jYiwgKHZvaWQgKiljcnRjKTsKPiA+ICsJCQlkcHVfZW5jb2Rlcl9hc3Np Z25fY3J0YyhlbmMsIGNydGMpOwo+ID4gIAkJfQo+ID4gIAl9IGVsc2Ugewo+ID4gIAkJbGlzdF9m b3JfZWFjaF9lbnRyeShlbmMsICZkZXYtPm1vZGVfY29uZmlnLmVuY29kZXJfbGlzdCwKPiA+IGhl YWQpIHsKPiA+IEBAIC03OTEsNyArNzg5LDcgQEAgc3RhdGljIHZvaWQgX2RwdV9jcnRjX3ZibGFu a19lbmFibGVfbm9fbG9jaygKPiA+ICAJCQkJCQkgICAgIERSTUlEKGVuYyksIGVuYWJsZSwKPiA+ ICAJCQkJCQkgICAgIGRwdV9jcnRjKTsKPiA+IAo+ID4gLQkJCWRwdV9lbmNvZGVyX3JlZ2lzdGVy X3ZibGFua19jYWxsYmFjayhlbmMsIE5VTEwsCj4gPiBOVUxMKTsKPiA+ICsJCQlkcHVfZW5jb2Rl cl9hc3NpZ25fY3J0YyhlbmMsIE5VTEwpOwo+ID4gIAkJfQo+ID4gIAl9Cj4gPiAgfQo+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRjLmgKPiA+IGIv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuaAo+ID4gaW5kZXggOTNkMjFh NjFhMDQwLi41NDU5NWNjMjliZTUgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNt L2Rpc3AvZHB1MS9kcHVfY3J0Yy5oCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfY3J0Yy5oCj4gPiBAQCAtMjcwLDYgKzI3MCwxMiBAQCBzdGF0aWMgaW5saW5lIGlu dCBkcHVfY3J0Y19mcmFtZV9wZW5kaW5nKHN0cnVjdAo+ID4gZHJtX2NydGMgKmNydGMpCj4gPiAg ICovCj4gPiAgaW50IGRwdV9jcnRjX3ZibGFuayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGJvb2wg ZW4pOwo+ID4gCj4gPiArLyoqCj4gPiArICogZHB1X2NydGNfdmJsYW5rX2NhbGxiYWNrIC0gY2Fs bGVkIG9uIHZibGFuayBpcnEsIGlzc3VlcyBjb21wbGV0aW9uCj4gPiBldmVudHMKPiA+ICsgKiBA Y3J0YzogUG9pbnRlciB0byBkcm0gY3J0YyBvYmplY3QKPiA+ICsgKi8KPiA+ICt2b2lkIGRwdV9j cnRjX3ZibGFua19jYWxsYmFjayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwo+ID4gKwo+ID4gIC8q Kgo+ID4gICAqIGRwdV9jcnRjX2NvbW1pdF9raWNrb2ZmIC0gdHJpZ2dlciBraWNrb2ZmIG9mIHRo ZSBjb21taXQgZm9yIHRoaXMKPiA+IGNydGMKPiA+ICAgKiBAY3J0YzogUG9pbnRlciB0byBkcm0g Y3J0YyBvYmplY3QKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1 MS9kcHVfZW5jb2Rlci5jCj4gPiBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9l bmNvZGVyLmMKPiA+IGluZGV4IGQ4OWFjNTIwZjdlNi4uZmQ2NTE0ZjY4MWFlIDEwMDY0NAo+ID4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuYwo+ID4gKysr IGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuYwo+ID4gQEAgLTE0 Miw5ICsxNDIsMTEgQEAgZW51bSBkcHVfZW5jX3JjX3N0YXRlcyB7Cj4gPiAgICogQGludGZzX3N3 YXBwZWQJV2hldGhlciBvciBub3QgdGhlIHBoeXNfZW5jIGludGVyZmFjZXMgaGF2ZSBiZWVuCj4g PiBzd2FwcGVkCj4gPiAgICoJCQlmb3IgcGFydGlhbCB1cGRhdGUgcmlnaHQtb25seSBjYXNlcywg c3VjaCBhcwo+ID4gcGluZ3BvbmcKPiA+ICAgKgkJCXNwbGl0IHdoZXJlIHZpcnR1YWwgcGluZ3Bv bmcgZG9lcyBub3QgZ2VuZXJhdGUKPiA+IElSUXMKPiA+IC0gKiBAY3J0Y192YmxhbmtfY2I6CUNh bGxiYWNrIGludG8gdGhlIHVwcGVyIGxheWVyIC8gQ1JUQyBmb3IKPiA+IC0gKgkJCW5vdGlmaWNh dGlvbiBvZiB0aGUgVkJMQU5LCj4gPiAtICogQGNydGNfdmJsYW5rX2NiX2RhdGE6CURhdGEgZnJv bSB1cHBlciBsYXllciBmb3IgVkJMQU5LCj4gPiBub3RpZmljYXRpb24KPiA+ICsgKiBAY3J0YzoJ CVBvaW50ZXIgdG8gdGhlIGN1cnJlbnRseSBhc3NpZ25lZCBjcnRjLiBOb3JtYWxseQo+ID4geW91 Cj4gPiArICoJCQl3b3VsZCB1c2UgY3J0Yy0+c3RhdGUtPmVuY29kZXJfbWFzayB0byBkZXRlcm1p bmUKPiA+IHRoZQo+ID4gKyAqCQkJbGluayBiZXR3ZWVuIGVuY29kZXIvY3J0Yy4gSG93ZXZlciBp biB0aGlzIGNhc2Ugd2UKPiA+IG5lZWQKPiA+ICsgKgkJCXRvIHRyYWNrIGNydGMgaW4gdGhlIGRp c2FibGUoKSBob29rIHdoaWNoIGlzCj4gPiBjYWxsZWQKPiA+ICsgKgkJCV9hZnRlcl8gZW5jb2Rl cl9tYXNrIGlzIGNsZWFyZWQuCj4gPiAgICogQGNydGNfa2lja29mZl9jYjoJCUNhbGxiYWNrIGlu dG8gQ1JUQyB0aGF0IHdpbGwgZmx1c2ggJiBzdGFydAo+ID4gICAqCQkJCWFsbCBDVEwgcGF0aHMK PiA+ICAgKiBAY3J0Y19raWNrb2ZmX2NiX2RhdGE6CU9wYXF1ZSB1c2VyIGRhdGEgZ2l2ZW4gdG8g Y3J0Y19raWNrb2ZmX2NiCj4gPiBAQCAtMTg2LDggKzE4OCw3IEBAIHN0cnVjdCBkcHVfZW5jb2Rl cl92aXJ0IHsKPiA+IAo+ID4gIAlib29sIGludGZzX3N3YXBwZWQ7Cj4gPiAKPiA+IC0Jdm9pZCAo KmNydGNfdmJsYW5rX2NiKSh2b2lkICopOwo+ID4gLQl2b2lkICpjcnRjX3ZibGFua19jYl9kYXRh Owo+ID4gKwlzdHJ1Y3QgZHJtX2NydGMgKmNydGM7Cj4gPiAKPiA+ICAJc3RydWN0IGRlbnRyeSAq ZGVidWdmc19yb290Owo+ID4gIAlzdHJ1Y3QgbXV0ZXggZW5jX2xvY2s7Cj4gPiBAQCAtMTI0MSw4 ICsxMjQyLDggQEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfdmJsYW5rX2NhbGxiYWNrKHN0cnVj dAo+ID4gZHJtX2VuY29kZXIgKmRybV9lbmMsCj4gPiAgCWRwdV9lbmMgPSB0b19kcHVfZW5jb2Rl cl92aXJ0KGRybV9lbmMpOwo+ID4gCj4gPiAgCXNwaW5fbG9ja19pcnFzYXZlKCZkcHVfZW5jLT5l bmNfc3BpbmxvY2ssIGxvY2tfZmxhZ3MpOwo+ID4gLQlpZiAoZHB1X2VuYy0+Y3J0Y192Ymxhbmtf Y2IpCj4gPiAtCQlkcHVfZW5jLT5jcnRjX3ZibGFua19jYihkcHVfZW5jLT5jcnRjX3ZibGFua19j Yl9kYXRhKTsKPiA+ICsJaWYgKGRwdV9lbmMtPmNydGMpCj4gPiArCQlkcHVfY3J0Y192Ymxhbmtf Y2FsbGJhY2soZHB1X2VuYy0+Y3J0Yyk7Cj4gPiAgCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmRw dV9lbmMtPmVuY19zcGlubG9jaywgbG9ja19mbGFncyk7Cj4gPiAKPiA+ICAJYXRvbWljX2luYygm cGh5X2VuYy0+dnN5bmNfY250KTsKPiA+IEBAIC0xMjYyLDE1ICsxMjYzLDE0IEBAIHN0YXRpYyB2 b2lkIGRwdV9lbmNvZGVyX3VuZGVycnVuX2NhbGxiYWNrKHN0cnVjdAo+ID4gZHJtX2VuY29kZXIg KmRybV9lbmMsCj4gPiAgCURQVV9BVFJBQ0VfRU5EKCJlbmNvZGVyX3VuZGVycnVuX2NhbGxiYWNr Iik7Cj4gPiAgfQo+ID4gCj4gPiAtdm9pZCBkcHVfZW5jb2Rlcl9yZWdpc3Rlcl92YmxhbmtfY2Fs bGJhY2soc3RydWN0IGRybV9lbmNvZGVyICpkcm1fZW5jLAo+ID4gLQkJdm9pZCAoKnZibF9jYiko dm9pZCAqKSwgdm9pZCAqdmJsX2RhdGEpCj4gPiArdm9pZCBkcHVfZW5jb2Rlcl9hc3NpZ25fY3J0 YyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmRybV9lbmMsIHN0cnVjdAo+ID4gZHJtX2NydGMKPiA+ICpj cnRjKQo+ID4gIHsKPiA+ICAJc3RydWN0IGRwdV9lbmNvZGVyX3ZpcnQgKmRwdV9lbmMgPSB0b19k cHVfZW5jb2Rlcl92aXJ0KGRybV9lbmMpOwo+ID4gIAl1bnNpZ25lZCBsb25nIGxvY2tfZmxhZ3M7 Cj4gPiAgCWJvb2wgZW5hYmxlOwo+ID4gIAlpbnQgaTsKPiA+IAo+ID4gLQllbmFibGUgPSB2Ymxf Y2IgPyB0cnVlIDogZmFsc2U7Cj4gPiArCWVuYWJsZSA9IGNydGMgPyB0cnVlIDogZmFsc2U7Cj4g PiAKPiA+ICAJaWYgKCFkcm1fZW5jKSB7Cj4gPiAgCQlEUFVfRVJST1IoImludmFsaWQgZW5jb2Rl clxuIik7Cj4gPiBAQCAtMTI3OSw4ICsxMjc5LDkgQEAgdm9pZCBkcHVfZW5jb2Rlcl9yZWdpc3Rl cl92YmxhbmtfY2FsbGJhY2soc3RydWN0Cj4gPiBkcm1fZW5jb2RlciAqZHJtX2VuYywKPiA+ICAJ dHJhY2VfZHB1X2VuY192YmxhbmtfY2IoRFJNSUQoZHJtX2VuYyksIGVuYWJsZSk7Cj4gPiAKPiA+ ICAJc3Bpbl9sb2NrX2lycXNhdmUoJmRwdV9lbmMtPmVuY19zcGlubG9jaywgbG9ja19mbGFncyk7 Cj4gPiAtCWRwdV9lbmMtPmNydGNfdmJsYW5rX2NiID0gdmJsX2NiOwo+ID4gLQlkcHVfZW5jLT5j cnRjX3ZibGFua19jYl9kYXRhID0gdmJsX2RhdGE7Cj4gPiArCS8qIGNydGMgc2hvdWxkIGFsd2F5 cyBiZSBjbGVhcmVkIGJlZm9yZSByZS1hc3NpZ25pbmcgKi8KPiA+ICsJV0FSTl9PTihjcnRjICYm IGRwdV9lbmMtPmNydGMpOwo+ID4gKwlkcHVfZW5jLT5jcnRjID0gY3J0YzsKPiA+ICAJc3Bpbl91 bmxvY2tfaXJxcmVzdG9yZSgmZHB1X2VuYy0+ZW5jX3NwaW5sb2NrLCBsb2NrX2ZsYWdzKTsKPiA+ IAo+ID4gIAlmb3IgKGkgPSAwOyBpIDwgZHB1X2VuYy0+bnVtX3BoeXNfZW5jczsgaSsrKSB7Cj4g PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIu aAo+ID4gYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlci5oCj4gPiBp bmRleCBhYTRmMTM1MjE4ZmEuLmJlMWQ4MDg2NzgzNCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmgKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmgKPiA+IEBAIC01NSwxNCArNTUsMTIgQEAg dm9pZCBkcHVfZW5jb2Rlcl9nZXRfaHdfcmVzb3VyY2VzKHN0cnVjdCBkcm1fZW5jb2Rlcgo+ID4g KmVuY29kZXIsCj4gPiAgCQkJCSAgc3RydWN0IGRwdV9lbmNvZGVyX2h3X3Jlc291cmNlcwo+ID4g Kmh3X3Jlcyk7Cj4gPiAKPiA+ICAvKioKPiA+IC0gKiBkcHVfZW5jb2Rlcl9yZWdpc3Rlcl92Ymxh bmtfY2FsbGJhY2sgLSBwcm92aWRlIGNhbGxiYWNrIHRvIGVuY29kZXIKPiA+IHRoYXQKPiA+IC0g Kgl3aWxsIGJlIGNhbGxlZCBvbiB0aGUgbmV4dCB2YmxhbmsuCj4gPiArICogZHB1X2VuY29kZXJf YXNzaWduX2NydGMgLSBMaW5rIHRoZSBlbmNvZGVyIHRvIHRoZSBjcnRjIGl0J3MgYXNzaWduZWQK PiA+IHRvCj4gPiAgICogQGVuY29kZXI6CWVuY29kZXIgcG9pbnRlcgo+ID4gLSAqIEBjYjoJCWNh bGxiYWNrIHBvaW50ZXIsIHByb3ZpZGUgTlVMTCB0byBkZXJlZ2lzdGVyIGFuZAo+ID4gZGlzYWJs ZSBJUlFzCj4gPiAtICogQGRhdGE6CXVzZXIgZGF0YSBwcm92aWRlZCB0byBjYWxsYmFjawo+ID4g KyAqIEBjcnRjOgljcnRjIHBvaW50ZXIKPiA+ICAgKi8KPiA+IC12b2lkIGRwdV9lbmNvZGVyX3Jl Z2lzdGVyX3ZibGFua19jYWxsYmFjayhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gPiAt CQl2b2lkICgqY2IpKHZvaWQgKiksIHZvaWQgKmRhdGEpOwo+ID4gK3ZvaWQgZHB1X2VuY29kZXJf YXNzaWduX2NydGMoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+ID4gKwkJCSAgICAgc3Ry dWN0IGRybV9jcnRjICpjcnRjKTsKPiA+IAo+ID4gIC8qKgo+ID4gICAqIGRwdV9lbmNvZGVyX3Jl Z2lzdGVyX2ZyYW1lX2V2ZW50X2NhbGxiYWNrIC0gcHJvdmlkZSBjYWxsYmFjayB0bwo+ID4gZW5j b2RlciB0aGF0Cj4gCj4gLS0gCj4gSmV5a3VtYXIgUwoKLS0gClNlYW4gUGF1bCwgU29mdHdhcmUg RW5naW5lZXIsIEdvb2dsZSAvIENocm9taXVtIE9TCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJlZWRyZW5vQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ZyZWVkcmVubwo=