From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 37267C2D0BF for ; Thu, 5 Dec 2019 11:04:59 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 114652464D for ; Thu, 5 Dec 2019 11:04:59 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 114652464D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A35D86E061; Thu, 5 Dec 2019 11:04:57 +0000 (UTC) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 18CC06F63D for ; Thu, 5 Dec 2019 11:04:56 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Dec 2019 03:04:55 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,281,1571727600"; d="scan'208";a="201739996" Received: from ramaling-i9x.iind.intel.com (HELO intel.com) ([10.99.66.154]) by orsmga007.jf.intel.com with ESMTP; 05 Dec 2019 03:04:53 -0800 Date: Thu, 5 Dec 2019 16:34:23 +0530 From: Ramalingam C To: Ville Syrjala Message-ID: <20191205110423.GE25793@intel.com> References: <20191204180549.1267-1-ville.syrjala@linux.intel.com> <20191204180549.1267-6-ville.syrjala@linux.intel.com> <20191205105937.GD25793@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191205105937.GD25793@intel.com> User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [Intel-gfx] [PATCH 5/9] drm/i915: Use intel_attached_encoder() X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: intel-gfx@lists.freedesktop.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gMjAxOS0xMi0wNSBhdCAxNjoyOTozNyArMDUzMCwgUmFtYWxpbmdhbSBDIHdyb3RlOgo+IE9u IDIwMTktMTItMDQgYXQgMjA6MDU6NDUgKzAyMDAsIFZpbGxlIFN5cmphbGEgd3JvdGU6Cj4gPiBG cm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID4g Cj4gPiBJdCdzIGVhc3kgdG8gY29uZnVzZSB0aGUgZHJtX2Nvbm5lY3Rvci0+ZW5jb2RlciAobGVn YWN5IHN0YXRlCj4gPiBhZGp1c3RlZCBkdXJpbmcgbW9kZXNldCkgYW5kIGludGVsX2Nvbm5lY3Rv ci0+ZW5jb2RlciAodGhlIHN0YXRpY2FsbHkKPiA+IChzYW5zLiBNU1QpIGF0dGFjaGVkIGVuY29k ZXIgb2YgdGhlIGNvbm5lY3RvcikuIEZvciB0aGUgbGF0dGVyCj4gPiBsZXQncyB1c2UgaW50ZWxf YXR0YWNoZWRfZW5jb2RlcigpIGNvbnNpc3RlbnRseS4KPiA+IAo+ID4gQEAKPiA+IGlkZW50aWZp ZXIgRiAhfiAiXmludGVsX2F0dGFjaGVkX2VuY29kZXIkIjsKPiA+IHN0cnVjdCBpbnRlbF9jb25u ZWN0b3IgKkM7Cj4gPiBleHByZXNzaW9uIEU7Cj4gPiBAQAo+ID4gRiguLi4pCj4gPiB7Cj4gPiA8 Li4uCj4gPiAoCj4gPiAgIEMtPmVuY29kZXIgPSBFCj4gPiB8Cj4gPiAtIEMtPmVuY29kZXIKPiA+ ICsgaW50ZWxfYXR0YWNoZWRfZW5jb2RlcihDKQo+IAo+IFlvdSBtZWFuIGludGVsX2F0dGFjaGVk X2VuY29kZXIoJkMtPmJhc2UpCj4gTmVlZCB0byBwYXNzIHRoZSBkcm1fY29ubmVjdG9yICoKTXkg YmFkISBTZWVuIHRoZSAybmQgcGF0Y2ggYWZ0ZXIgNXRoIDopIElnbm9yZSB0aGlzIGNvbW1lbnQu CgotUmFtCj4gCj4gU28gdGhpcyBpcyBmb3IgcmVhZGFiaWxpdHkhPyBUaGlzIGFkZHMgdGhlIGxp bmUgbGVuZ3RoIGJleW9uZCA4MGNoYXIKPiBvciB0byByZWR1Y2UgdGhhdCBhIGV4dHJhIGxvY2Fs IHZhcmlhYmxlLiBJIGxlYXZlIHRoYXQgdG8geW91Lgo+ID4gKQo+ID4gLi4uPgo+ID4gfQo+ID4g Cj4gPiBAQAo+ID4gaWRlbnRpZmllciBGICF+ICJeaW50ZWxfYXR0YWNoZWRfZW5jb2RlciQiOwo+ ID4gc3RydWN0IGRybV9jb25uZWN0b3IgKkM7Cj4gPiBleHByZXNzaW9uIEU7Cj4gPiBAQAo+ID4g RiguLi4pCj4gPiB7Cj4gPiA8Li4uCj4gPiAoCj4gPiAgIHRvX2ludGVsX2Nvbm5lY3RvcihDKS0+ ZW5jb2RlciA9IEUKPiA+IHwKPiA+IC0gdG9faW50ZWxfY29ubmVjdG9yKEMpLT5lbmNvZGVyCj4g PiArIGludGVsX2F0dGFjaGVkX2VuY29kZXIodG9faW50ZWxfY29ubmVjdG9yKEMpKQo+ID4gKQo+ ID4gLi4uPgo+ID4gfQo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZp bGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID4gLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9jb25uZWN0b3IuYyAgICAgICB8ICAyICstCj4gPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGkuYyAgICAgICAgICAgICB8ICAyICstCj4g PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgICAgICAgICB8 ICA0ICsrLS0KPiA+ICAuLi4vZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfYXV4X2JhY2ts aWdodC5jICAgIHwgMTIgKysrKysrLS0tLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9kcF9tc3QuYyAgICAgICAgICB8ICA0ICsrLS0KPiA+ICAuLi4vZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZHNpX2Rjc19iYWNrbGlnaHQuYyAgIHwgIDQgKystLQo+ID4gIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRjcC5jICAgICAgICAgICAgfCAgOCAr KysrLS0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaG90cGx1Zy5j ICAgICAgICAgfCAxMCArKysrKy0tLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS92bHZfZHNpLmMgICAgICAgICAgICAgICB8ICAyICstCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kZWJ1Z2ZzLmMgICAgICAgICAgICAgICAgICB8ICA2ICsrKy0tLQo+ID4gIDEwIGZp bGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQo+ID4gCj4gPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9jb25uZWN0b3Iu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfY29ubmVjdG9yLmMKPiA+IGlu ZGV4IDExMzNjNGU5N2JiNC4uNTQ4OTFhNGVkMmYzIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9jb25uZWN0b3IuYwo+ID4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9jb25uZWN0b3IuYwo+ID4gQEAgLTE1Myw3ICsxNTMs NyBAQCB2b2lkIGludGVsX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcihzdHJ1Y3QgaW50ZWxfY29u bmVjdG9yICpjb25uZWN0b3IsCj4gPiAgYm9vbCBpbnRlbF9jb25uZWN0b3JfZ2V0X2h3X3N0YXRl KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiA+ICB7Cj4gPiAgCWVudW0gcGlw ZSBwaXBlID0gMDsKPiA+IC0Jc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIgPSBjb25uZWN0 b3ItPmVuY29kZXI7Cj4gPiArCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyID0gaW50ZWxf YXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpOwo+IGludGVsX2F0dGFjaGVkX2VuY29kZXIgdGFr ZXMgZHJtX2Nvbm5lY3RvciAqIGluc3RlYWQgb2YgaW50ZWxfY29ubmVjdG9yLgo+IEV2ZXJ5d2hl cmUgd2UgbmVlZCB0byBjaGFuZ2UgdGhpcy4KPiA+ICAKPiA+ICAJcmV0dXJuIGVuY29kZXItPmdl dF9od19zdGF0ZShlbmNvZGVyLCAmcGlwZSk7Cj4gPiAgfQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2RkaS5jCj4gPiBpbmRleCA1MmQxODdkYjMyMGYuLjNlNDYwMTcxNTBi NCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRp LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMKPiA+ IEBAIC0yMDAzLDcgKzIwMDMsNyBAQCBib29sIGludGVsX2RkaV9jb25uZWN0b3JfZ2V0X2h3X3N0 YXRlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvcikKPiA+ICB7Cj4gPiAg CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBpbnRlbF9jb25uZWN0b3ItPmJhc2UuZGV2Owo+ID4g IAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gPiAt CXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyID0gaW50ZWxfY29ubmVjdG9yLT5lbmNvZGVy Owo+ID4gKwlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciA9IGludGVsX2F0dGFjaGVkX2Vu Y29kZXIoaW50ZWxfY29ubmVjdG9yKTsKPiBBcyB5b3UgaGF2ZSBkb25lIGluIHByZXZpb3VzIHNl cmllcywgY291bGQgd2UgcmVuYW1lIHRoaXMgaW50ZWxfY29ubmVjdG9yCj4gYXMgY29ubmVjdG9y Cj4gPiAgCWludCB0eXBlID0gaW50ZWxfY29ubmVjdG9yLT5iYXNlLmNvbm5lY3Rvcl90eXBlOwo+ ID4gIAllbnVtIHBvcnQgcG9ydCA9IGVuY29kZXItPnBvcnQ7Cj4gPiAgCWVudW0gdHJhbnNjb2Rl ciBjcHVfdHJhbnNjb2RlcjsKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheS5jCj4gPiBpbmRleCA0NTU2OGE3YzY1NzkuLmRmMWI4MDM4NzEwNiAxMDA2NDQK PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4g PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+ID4g QEAgLTcyNzksNyArNzI3OSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2Nvbm5lY3Rvcl92ZXJpZnlf c3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gPiAgCQkgICAgICBj b25uZWN0b3ItPmJhc2UubmFtZSk7Cj4gPiAgCj4gPiAgCWlmIChjb25uZWN0b3ItPmdldF9od19z dGF0ZShjb25uZWN0b3IpKSB7Cj4gPiAtCQlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciA9 IGNvbm5lY3Rvci0+ZW5jb2RlcjsKPiA+ICsJCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy ID0gaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpOwo+ID4gIAo+ID4gIAkJSTkxNV9T VEFURV9XQVJOKCFjcnRjX3N0YXRlLAo+ID4gIAkJCSAiY29ubmVjdG9yIGVuYWJsZWQgd2l0aG91 dCBhdHRhY2hlZCBjcnRjXG4iKTsKPiA+IEBAIC0xNzUyOSw3ICsxNzUyOSw3IEBAIHN0YXRpYyB2 b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KQo+ID4gIAo+ID4gIAkJCWNvbm5lY3Rvci0+YmFzZS5kcG1zID0gRFJNX01PREVfRFBNU19PTjsK PiA+ICAKPiA+IC0JCQllbmNvZGVyID0gY29ubmVjdG9yLT5lbmNvZGVyOwo+ID4gKwkJCWVuY29k ZXIgPSBpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNvbm5lY3Rvcik7Cj4gPiAgCQkJY29ubmVjdG9y LT5iYXNlLmVuY29kZXIgPSAmZW5jb2Rlci0+YmFzZTsKPiA+ICAKPiA+ICAJCQljcnRjID0gdG9f aW50ZWxfY3J0YyhlbmNvZGVyLT5iYXNlLmNydGMpOwo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9hdXhfYmFja2xpZ2h0LmMKPiA+IGluZGV4IDdj NjUzZjhjMzA3Zi4uNzcxZTIyYTBiMmE0IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kcF9hdXhfYmFja2xpZ2h0LmMKPiA+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jCj4gPiBAQCAtNTcs NyArNTcsNyBAQCBzdGF0aWMgdm9pZCBzZXRfYXV4X2JhY2tsaWdodF9lbmFibGUoc3RydWN0IGlu dGVsX2RwICppbnRlbF9kcCwgYm9vbCBlbmFibGUpCj4gPiAgICovCj4gPiAgc3RhdGljIHUzMiBp bnRlbF9kcF9hdXhfZ2V0X2JhY2tsaWdodChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0 b3IpCj4gPiAgewo+ID4gLQlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5jX3RvX2ludGVs X2RwKGNvbm5lY3Rvci0+ZW5jb2Rlcik7Cj4gPiArCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAg PSBlbmNfdG9faW50ZWxfZHAoaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpKTsKPiA+ ICAJdTggcmVhZF92YWxbMl0gPSB7IDB4MCB9Owo+ID4gIAl1MTYgbGV2ZWwgPSAwOwo+ID4gIAo+ ID4gQEAgLTgyLDcgKzgyLDcgQEAgc3RhdGljIHZvaWQKPiA+ICBpbnRlbF9kcF9hdXhfc2V0X2Jh Y2tsaWdodChjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSwgdTMy IGxldmVsKQo+ID4gIHsKPiA+ICAJc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yID0g dG9faW50ZWxfY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNvbm5lY3Rvcik7Cj4gPiAtCXN0cnVjdCBp bnRlbF9kcCAqaW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoY29ubmVjdG9yLT5lbmNvZGVyKTsK PiA+ICsJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcChpbnRlbF9h dHRhY2hlZF9lbmNvZGVyKGNvbm5lY3RvcikpOwo+ID4gIAl1OCB2YWxzWzJdID0geyAweDAgfTsK PiA+ICAKPiA+ICAJdmFsc1swXSA9IGxldmVsOwo+ID4gQEAgLTExMCw3ICsxMTAsNyBAQCBpbnRl bF9kcF9hdXhfc2V0X2JhY2tsaWdodChjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAq Y29ubl9zdGF0ZSwgdTMyIGxldgo+ID4gIHN0YXRpYyBib29sIGludGVsX2RwX2F1eF9zZXRfcHdt X2ZyZXEoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gIHsKPiA+ICAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjb25uZWN0b3ItPmJhc2Uu ZGV2KTsKPiA+IC0Jc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcChj b25uZWN0b3ItPmVuY29kZXIpOwo+ID4gKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5j X3RvX2ludGVsX2RwKGludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKSk7Cj4gPiAgCWlu dCBmcmVxLCBmeHAsIGZ4cF9taW4sIGZ4cF9tYXgsIGZ4cF9hY3R1YWwsIGYgPSAxOwo+ID4gIAl1 OCBwbiwgcG5fbWluLCBwbl9tYXg7Cj4gPiAgCj4gPiBAQCAtMTc4LDcgKzE3OCw3IEBAIHN0YXRp YyB2b2lkIGludGVsX2RwX2F1eF9lbmFibGVfYmFja2xpZ2h0KGNvbnN0IHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjcnRjX3N0Cj4gPiAgCQkJCQkgIGNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9y X3N0YXRlICpjb25uX3N0YXRlKQo+ID4gIHsKPiA+ICAJc3RydWN0IGludGVsX2Nvbm5lY3RvciAq Y29ubmVjdG9yID0gdG9faW50ZWxfY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNvbm5lY3Rvcik7Cj4g PiAtCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoY29ubmVjdG9y LT5lbmNvZGVyKTsKPiA+ICsJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19pbnRl bF9kcChpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNvbm5lY3RvcikpOwo+ID4gIAl1OCBkcGNkX2J1 ZiwgbmV3X2RwY2RfYnVmLCBlZHBfYmFja2xpZ2h0X21vZGU7Cj4gPiAgCj4gPiAgCWlmIChkcm1f ZHBfZHBjZF9yZWFkYigmaW50ZWxfZHAtPmF1eCwKPiA+IEBAIC0yMjksNyArMjI5LDcgQEAgc3Rh dGljIHZvaWQgaW50ZWxfZHBfYXV4X2Rpc2FibGVfYmFja2xpZ2h0KGNvbnN0IHN0cnVjdCBkcm1f Y29ubmVjdG9yX3N0YXRlICpvbGQKPiA+ICBzdGF0aWMgaW50IGludGVsX2RwX2F1eF9zZXR1cF9i YWNrbGlnaHQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4gIAkJCQkJZW51 bSBwaXBlIHBpcGUpCj4gPiAgewo+ID4gLQlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5j X3RvX2ludGVsX2RwKGNvbm5lY3Rvci0+ZW5jb2Rlcik7Cj4gPiArCXN0cnVjdCBpbnRlbF9kcCAq aW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0 b3IpKTsKPiA+ICAJc3RydWN0IGludGVsX3BhbmVsICpwYW5lbCA9ICZjb25uZWN0b3ItPnBhbmVs Owo+ID4gIAo+ID4gIAlpZiAoaW50ZWxfZHAtPmVkcF9kcGNkWzJdICYgRFBfRURQX0JBQ0tMSUdI VF9CUklHSFRORVNTX0JZVEVfQ09VTlQpCj4gPiBAQCAtMjQ4LDcgKzI0OCw3IEBAIHN0YXRpYyBp bnQgaW50ZWxfZHBfYXV4X3NldHVwX2JhY2tsaWdodChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpj b25uZWN0b3IsCj4gPiAgc3RhdGljIGJvb2wKPiA+ICBpbnRlbF9kcF9hdXhfZGlzcGxheV9jb250 cm9sX2NhcGFibGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gIHsKPiA+ IC0Jc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcChjb25uZWN0b3It PmVuY29kZXIpOwo+ID4gKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5jX3RvX2ludGVs X2RwKGludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKSk7Cj4gPiAgCj4gPiAgCS8qIENo ZWNrIHRoZSBlRFAgRGlzcGxheSBjb250cm9sIGNhcGFiaWxpdGllcyByZWdpc3RlcnMgdG8gZGV0 ZXJtaW5lIGlmCj4gPiAgCSAqIHRoZSBwYW5lbCBjYW4gc3VwcG9ydCBiYWNrbGlnaHQgY29udHJv bCBvdmVyIHRoZSBhdXggY2hhbm5lbAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZHBfbXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2RwX21zdC5jCj4gPiBpbmRleCBhZjdmNmQ2NzBlMDcuLjFhN2Q2OTg0M2MxMiAxMDA2 NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfbXN0LmMK PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfbXN0LmMKPiA+ IEBAIC01MDMsOSArNTAzLDkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZW5jb2Rlcl9mdW5j cyBpbnRlbF9kcF9tc3RfZW5jX2Z1bmNzID0gewo+ID4gIAo+ID4gIHN0YXRpYyBib29sIGludGVs X2RwX21zdF9nZXRfaHdfc3RhdGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ ID4gIHsKPiA+IC0JaWYgKGNvbm5lY3Rvci0+ZW5jb2RlciAmJiBjb25uZWN0b3ItPmJhc2Uuc3Rh dGUtPmNydGMpIHsKPiA+ICsJaWYgKGludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKSAm JiBjb25uZWN0b3ItPmJhc2Uuc3RhdGUtPmNydGMpIHsKPiA+ICAJCWVudW0gcGlwZSBwaXBlOwo+ ID4gLQkJaWYgKCFjb25uZWN0b3ItPmVuY29kZXItPmdldF9od19zdGF0ZShjb25uZWN0b3ItPmVu Y29kZXIsICZwaXBlKSkKPiA+ICsJCWlmICghaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0 b3IpLT5nZXRfaHdfc3RhdGUoaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpLCAmcGlw ZSkpCj4gRG8gd2UgcHJlZmVyIHRoaXMgd2F5IG9yIHdpdGggbG9jYWwgdmFyIGZvciBhdHRhY2hl ZCBlbmNvZGVyIHJlc3RyaWN0aW5nCj4gbGluZSB0byA4MGNoYXI/Cj4gPiAgCQkJcmV0dXJuIGZh bHNlOwo+ID4gIAkJcmV0dXJuIHRydWU7Cj4gPiAgCX0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RzaV9kY3NfYmFja2xpZ2h0LmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RzaV9kY3NfYmFja2xpZ2h0LmMKPiA+IGluZGV4 IGM4NzgzODg0M2QwYi4uYWMzZWZmMjZkZjEyIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kc2lfZGNzX2JhY2tsaWdodC5jCj4gPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RzaV9kY3NfYmFja2xpZ2h0LmMKPiA+IEBA IC00NSw3ICs0NSw3IEBACj4gPiAgCj4gPiAgc3RhdGljIHUzMiBkY3NfZ2V0X2JhY2tsaWdodChz dHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCj4gPiAgewo+ID4gLQlzdHJ1Y3QgaW50 ZWxfZW5jb2RlciAqZW5jb2RlciA9IGNvbm5lY3Rvci0+ZW5jb2RlcjsKPiA+ICsJc3RydWN0IGlu dGVsX2VuY29kZXIgKmVuY29kZXIgPSBpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNvbm5lY3Rvcik7 Cj4gPiAgCXN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSA9IGVuY190b19pbnRlbF9kc2koZW5j b2Rlcik7Cj4gPiAgCXN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKmRzaV9kZXZpY2U7Cj4gPiAgCXU4 IGRhdGEgPSAwOwo+ID4gQEAgLTE2MCw3ICsxNjAsNyBAQCBpbnQgaW50ZWxfZHNpX2Rjc19pbml0 X2JhY2tsaWdodF9mdW5jcyhzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3Ip Cj4gPiAgewo+ID4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfY29ubmVjdG9yLT5i YXNlLmRldjsKPiA+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkx NShkZXYpOwo+ID4gLQlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciA9IGludGVsX2Nvbm5l Y3Rvci0+ZW5jb2RlcjsKPiA+ICsJc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIgPSBpbnRl bF9hdHRhY2hlZF9lbmNvZGVyKGludGVsX2Nvbm5lY3Rvcik7Cj4gcy9pbnRlbF9jb25uZWN0b3Iv Y29ubmVjdG9yID8KPiA+ICAJc3RydWN0IGludGVsX3BhbmVsICpwYW5lbCA9ICZpbnRlbF9jb25u ZWN0b3ItPnBhbmVsOwo+ID4gIAo+ID4gIAlpZiAoZGV2X3ByaXYtPnZidC5iYWNrbGlnaHQudHlw ZSAhPSBJTlRFTF9CQUNLTElHSFRfRFNJX0RDUykKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hkY3AuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfaGRjcC5jCj4gPiBpbmRleCAwZmRiZDM5ZjY2NDEuLjI4NTkyMzA2NzFhZSAx MDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRjcC5j Cj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hkY3AuYwo+ID4g QEAgLTE1MjcsNyArMTUyNyw3IEBAIHN0YXRpYyBpbnQgaGRjcDJfZW5hYmxlX2VuY3J5cHRpb24o c3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gIAlzdHJ1Y3QgaW50ZWxfZGln aXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9IGNvbm5fdG9fZGlnX3BvcnQoY29ubmVjdG9yKTsK PiA+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjb25uZWN0 b3ItPmJhc2UuZGV2KTsKPiA+ICAJc3RydWN0IGludGVsX2hkY3AgKmhkY3AgPSAmY29ubmVjdG9y LT5oZGNwOwo+ID4gLQllbnVtIHBvcnQgcG9ydCA9IGNvbm5lY3Rvci0+ZW5jb2Rlci0+cG9ydDsK PiA+ICsJZW51bSBwb3J0IHBvcnQgPSBpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNvbm5lY3Rvcikt PnBvcnQ7Cj4gPiAgCWVudW0gdHJhbnNjb2RlciBjcHVfdHJhbnNjb2RlciA9IGhkY3AtPmNwdV90 cmFuc2NvZGVyOwo+ID4gIAlpbnQgcmV0Owo+ID4gIAo+ID4gQEAgLTE1NjUsNyArMTU2NSw3IEBA IHN0YXRpYyBpbnQgaGRjcDJfZGlzYWJsZV9lbmNyeXB0aW9uKHN0cnVjdCBpbnRlbF9jb25uZWN0 b3IgKmNvbm5lY3RvcikKPiA+ICAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGln X3BvcnQgPSBjb25uX3RvX2RpZ19wb3J0KGNvbm5lY3Rvcik7Cj4gPiAgCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVjdG9yLT5iYXNlLmRldik7Cj4gPiAg CXN0cnVjdCBpbnRlbF9oZGNwICpoZGNwID0gJmNvbm5lY3Rvci0+aGRjcDsKPiA+IC0JZW51bSBw b3J0IHBvcnQgPSBjb25uZWN0b3ItPmVuY29kZXItPnBvcnQ7Cj4gPiArCWVudW0gcG9ydCBwb3J0 ID0gaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpLT5wb3J0Owo+ID4gIAllbnVtIHRy YW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBoZGNwLT5jcHVfdHJhbnNjb2RlcjsKPiA+ICAJaW50 IHJldDsKPiA+ICAKPiA+IEBAIC0xNjc2LDcgKzE2NzYsNyBAQCBzdGF0aWMgaW50IGludGVsX2hk Y3AyX2NoZWNrX2xpbmsoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gIAlz dHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9IGNvbm5fdG9fZGlnX3Bv cnQoY29ubmVjdG9yKTsKPiA+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g dG9faTkxNShjb25uZWN0b3ItPmJhc2UuZGV2KTsKPiA+ICAJc3RydWN0IGludGVsX2hkY3AgKmhk Y3AgPSAmY29ubmVjdG9yLT5oZGNwOwo+ID4gLQllbnVtIHBvcnQgcG9ydCA9IGNvbm5lY3Rvci0+ ZW5jb2Rlci0+cG9ydDsKPiA+ICsJZW51bSBwb3J0IHBvcnQgPSBpbnRlbF9hdHRhY2hlZF9lbmNv ZGVyKGNvbm5lY3RvciktPnBvcnQ7Cj4gPiAgCWVudW0gdHJhbnNjb2RlciBjcHVfdHJhbnNjb2Rl cjsKPiA+ICAJaW50IHJldCA9IDA7Cj4gPiAgCj4gPiBAQCAtMTgzMCw3ICsxODMwLDcgQEAgc3Rh dGljIGlubGluZSBpbnQgaW5pdGlhbGl6ZV9oZGNwX3BvcnRfZGF0YShzdHJ1Y3QgaW50ZWxfY29u bmVjdG9yICpjb25uZWN0b3IsCj4gPiAgCj4gPiAgCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwg MTIpCj4gPiAgCQlkYXRhLT5md19kZGkgPQo+ID4gLQkJCWludGVsX2dldF9tZWlfZndfZGRpX2lu ZGV4KGNvbm5lY3Rvci0+ZW5jb2Rlci0+cG9ydCk7Cj4gPiArCQkJaW50ZWxfZ2V0X21laV9md19k ZGlfaW5kZXgoaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpLT5wb3J0KTsKPiBjb3Vs ZCB3ZSB3cmFwIGF0IDgwY2hhciB3aXRoIHZhciBlbmNvZGVyPwo+ID4gIAllbHNlCj4gPiAgCQkv Kgo+ID4gIAkJICogQXMgcGVyIE1FIEZXIEFQSSBleHBlY3RhdGlvbiwgZm9yIEdFTiAxMissIGZ3 X2RkaSBpcyBmaWxsZWQKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2hvdHBsdWcuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf aG90cGx1Zy5jCj4gPiBpbmRleCA5OWQzYTNjNzk4OWUuLmMzYTQ4YWYzNTk5NyAxMDA2NDQKPiA+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaG90cGx1Zy5jCj4gPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hvdHBsdWcuYwo+ID4gQEAg LTIwMCw3ICsyMDAsNyBAQCBpbnRlbF9ocGRfaXJxX3N0b3JtX3N3aXRjaF90b19wb2xsaW5nKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+ICAJCQljb250aW51ZTsKPiA+ICAK PiA+ICAJCWludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpOwo+ ID4gLQkJaW50ZWxfZW5jb2RlciA9IGludGVsX2Nvbm5lY3Rvci0+ZW5jb2RlcjsKPiA+ICsJCWlu dGVsX2VuY29kZXIgPSBpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGludGVsX2Nvbm5lY3Rvcik7Cj4g PiAgCQlpZiAoIWludGVsX2VuY29kZXIpCj4gPiAgCQkJY29udGludWU7Cj4gPiAgCj4gPiBAQCAt MjU1LDcgKzI1NSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2hwZF9pcnFfc3Rvcm1fcmVlbmFibGVf d29yayhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCj4gPiAgCj4gPiAgCQkJLyogRG9uJ3QgY2hl Y2sgTVNUIHBvcnRzLCB0aGV5IGRvbid0IGhhdmUgcGlucyAqLwo+ID4gIAkJCWlmICghaW50ZWxf Y29ubmVjdG9yLT5tc3RfcG9ydCAmJgo+ID4gLQkJCSAgICBpbnRlbF9jb25uZWN0b3ItPmVuY29k ZXItPmhwZF9waW4gPT0gcGluKSB7Cj4gPiArCQkJICAgIGludGVsX2F0dGFjaGVkX2VuY29kZXIo aW50ZWxfY29ubmVjdG9yKS0+aHBkX3BpbiA9PSBwaW4pIHsKPiA+ICAJCQkJaWYgKGNvbm5lY3Rv ci0+cG9sbGVkICE9IGludGVsX2Nvbm5lY3Rvci0+cG9sbGVkKQo+ID4gIAkJCQkJRFJNX0RFQlVH X0RSSVZFUigiUmVlbmFibGluZyBIUEQgb24gY29ubmVjdG9yICVzXG4iLAo+ID4gIAkJCQkJCQkg Y29ubmVjdG9yLT5uYW1lKTsKPiA+IEBAIC0zODksOSArMzg5LDkgQEAgc3RhdGljIHZvaWQgaTkx NV9ob3RwbHVnX3dvcmtfZnVuYyhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCj4gPiAgCQl1MzIg aHBkX2JpdDsKPiA+ICAKPiA+ICAJCWludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVsX2Nvbm5lY3Rv cihjb25uZWN0b3IpOwo+ID4gLQkJaWYgKCFpbnRlbF9jb25uZWN0b3ItPmVuY29kZXIpCj4gPiAr CQlpZiAoIWludGVsX2F0dGFjaGVkX2VuY29kZXIoaW50ZWxfY29ubmVjdG9yKSkKPiA+ICAJCQlj b250aW51ZTsKPiA+IC0JCWludGVsX2VuY29kZXIgPSBpbnRlbF9jb25uZWN0b3ItPmVuY29kZXI7 Cj4gPiArCQlpbnRlbF9lbmNvZGVyID0gaW50ZWxfYXR0YWNoZWRfZW5jb2RlcihpbnRlbF9jb25u ZWN0b3IpOwo+ID4gIAkJaHBkX2JpdCA9IEJJVChpbnRlbF9lbmNvZGVyLT5ocGRfcGluKTsKPiA+ ICAJCWlmICgoaHBkX2V2ZW50X2JpdHMgfCBocGRfcmV0cnlfYml0cykgJiBocGRfYml0KSB7Cj4g PiAgCQkJRFJNX0RFQlVHX0tNUygiQ29ubmVjdG9yICVzIChwaW4gJWkpIHJlY2VpdmVkIGhvdHBs dWcgZXZlbnQuXG4iLAo+ID4gQEAgLTYyMSw3ICs2MjEsNyBAQCBzdGF0aWMgdm9pZCBpOTE1X2hw ZF9wb2xsX2luaXRfd29yayhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCj4gPiAgCQkJY29udGlu dWU7Cj4gPiAgCj4gPiAgCQlpZiAoIWNvbm5lY3Rvci0+cG9sbGVkICYmIEk5MTVfSEFTX0hPVFBM VUcoZGV2X3ByaXYpICYmCj4gPiAtCQkgICAgaW50ZWxfY29ubmVjdG9yLT5lbmNvZGVyLT5ocGRf cGluID4gSFBEX05PTkUpIHsKPiA+ICsJCSAgICBpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGludGVs X2Nvbm5lY3RvciktPmhwZF9waW4gPiBIUERfTk9ORSkgewo+ID4gIAkJCWNvbm5lY3Rvci0+cG9s bGVkID0gZW5hYmxlZCA/Cj4gPiAgCQkJCURSTV9DT05ORUNUT1JfUE9MTF9DT05ORUNUIHwKPiA+ ICAJCQkJRFJNX0NPTk5FQ1RPUl9QT0xMX0RJU0NPTk5FQ1QgOgo+ID4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvdmx2X2RzaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS92bHZfZHNpLmMKPiA+IGluZGV4IDBjMTkwNjRlNDJlMC4uNTM1YjMzMmIwNjdk IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS92bHZfZHNpLmMK PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvdmx2X2RzaS5jCj4gPiBAQCAt MTU2Nyw3ICsxNTY3LDcgQEAgc3RhdGljIGVudW0gZHJtX3BhbmVsX29yaWVudGF0aW9uCj4gPiAg dmx2X2RzaV9nZXRfaHdfcGFuZWxfb3JpZW50YXRpb24oc3RydWN0IGludGVsX2Nvbm5lY3RvciAq Y29ubmVjdG9yKQo+ID4gIHsKPiA+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gdG9faTkxNShjb25uZWN0b3ItPmJhc2UuZGV2KTsKPiA+IC0Jc3RydWN0IGludGVsX2VuY29k ZXIgKmVuY29kZXIgPSBjb25uZWN0b3ItPmVuY29kZXI7Cj4gPiArCXN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyID0gaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpOwo+ID4gIAll bnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIHBvd2VyX2RvbWFpbjsKPiA+ICAJZW51bSBk cm1fcGFuZWxfb3JpZW50YXRpb24gb3JpZW50YXRpb247Cj4gPiAgCXN0cnVjdCBpbnRlbF9wbGFu ZSAqcGxhbmU7Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1 Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+ID4gaW5kZXggM2Jj OGQ1YzBlODhhLi5kOGMyZmEyNjcyYjUgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2RlYnVnZnMuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k ZWJ1Z2ZzLmMKPiA+IEBAIC0yNDMxLDcgKzI0MzEsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9oZGNw X2luZm8oc3RydWN0IHNlcV9maWxlICptLAo+ID4gIHN0YXRpYyB2b2lkIGludGVsX2RwX2luZm8o c3RydWN0IHNlcV9maWxlICptLAo+ID4gIAkJCSAgc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50 ZWxfY29ubmVjdG9yKQo+ID4gIHsKPiA+IC0Jc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2Vu Y29kZXIgPSBpbnRlbF9jb25uZWN0b3ItPmVuY29kZXI7Cj4gPiArCXN0cnVjdCBpbnRlbF9lbmNv ZGVyICppbnRlbF9lbmNvZGVyID0gaW50ZWxfYXR0YWNoZWRfZW5jb2RlcihpbnRlbF9jb25uZWN0 b3IpOwo+ID4gIAlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5jX3RvX2ludGVsX2RwKGlu dGVsX2VuY29kZXIpOwo+ID4gIAo+ID4gIAlzZXFfcHJpbnRmKG0sICJcdERQQ0QgcmV2OiAleFxu IiwgaW50ZWxfZHAtPmRwY2RbRFBfRFBDRF9SRVZdKTsKPiA+IEBAIC0yNDUwLDcgKzI0NTAsNyBA QCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9pbmZvKHN0cnVjdCBzZXFfZmlsZSAqbSwKPiA+ICBzdGF0 aWMgdm9pZCBpbnRlbF9kcF9tc3RfaW5mbyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sCj4gPiAgCQkJICBz dHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IpCj4gPiAgewo+ID4gLQlzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciA9IGludGVsX2Nvbm5lY3Rvci0+ZW5jb2Rl cjsKPiA+ICsJc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIgPSBpbnRlbF9hdHRh Y2hlZF9lbmNvZGVyKGludGVsX2Nvbm5lY3Rvcik7Cj4gcy9pbnRlbF9jb25uZWN0b3IvY29ubmVj dG9yID8KPiA+ICAJc3RydWN0IGludGVsX2RwX21zdF9lbmNvZGVyICppbnRlbF9tc3QgPQo+ID4g IAkJZW5jX3RvX21zdChpbnRlbF9lbmNvZGVyKTsKPiA+ICAJc3RydWN0IGludGVsX2RpZ2l0YWxf cG9ydCAqaW50ZWxfZGlnX3BvcnQgPSBpbnRlbF9tc3QtPnByaW1hcnk7Cj4gPiBAQCAtMjQ2NCw3 ICsyNDY0LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHBfbXN0X2luZm8oc3RydWN0IHNlcV9maWxl ICptLAo+ID4gIHN0YXRpYyB2b2lkIGludGVsX2hkbWlfaW5mbyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0s Cj4gPiAgCQkJICAgIHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvcikKPiA+ ICB7Cj4gPiAtCXN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyID0gaW50ZWxfY29u bmVjdG9yLT5lbmNvZGVyOwo+ID4gKwlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2Rl ciA9IGludGVsX2F0dGFjaGVkX2VuY29kZXIoaW50ZWxfY29ubmVjdG9yKTsKPiBzL2ludGVsX2Nv bm5lY3Rvci9jb25uZWN0b3IgPwo+IAo+IC1SYW0KPiA+ICAJc3RydWN0IGludGVsX2RwX21zdF9l bmNvZGVyICppbnRlbF9tc3QgPQo+ID4gIAlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9 IGVuY190b19pbnRlbF9oZG1pKGludGVsX2VuY29kZXIpOwo+ID4gIAo+ID4gIAlzZXFfcHJpbnRm KG0sICJcdGF1ZGlvIHN1cHBvcnQ6ICVzXG4iLCB5ZXNubyhpbnRlbF9oZG1pLT5oYXNfYXVkaW8p KTsKPiA+IC0tIAo+ID4gMi4yMy4wCj4gPiAKPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCj4gPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gPiBJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo+IF9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeApfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZng=